Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 07.08.2017 13:34:48

Публикация проекта

Всем доброго времени суток!
Столкнулся с непонимание того, как всё-таки выложить проект на ларавеле 5.4 в битбакет, да ещё и так, чтобы принимающий его смог запустить и проверить. Я гуглил вчера до ночи, но так ничего полного и не нашёл:(
У меня получилась смесь незнания ларавела с незнанием Гит. Я уже создал репозиторий, понимаю базовые моменты работы с ним, но абсолютно не понимаю какие файлы туда закинуть, чтобы их могли глянуть и запустить для проверки.
Ребят, не судите строго, вопрос глупый, наверное, но сгодится таким-же новичкам, как и я. Просто очень нуждаюсь в помощи знающих людей
Заранее большое спасибо за ответы!

Забыл: у меня есть локальная база для кэша и для элементов каталога

Изменено skomyanov (07.08.2017 13:39:02)

Не в сети

#2 07.08.2017 14:01:48

Re: Публикация проекта

в гит репозиторий все файлы проекта (кроме мусора, по типу .ide_hepler.php/node_modules/vendor/.idea, эти файлы и папки в гитигнор).

для запуска проекта - это уже отдельная тема.
vagrant или docker, есть готовая сборка вагранта для ларавела (я ее не использовал) - https://laravel.com/docs/5.4/homestead
как ей пользоваться - посмотри ларакасты.

если ты базу создавал минуя миграции - плохо, придется объяснять человеку, как развернуть базу из бэкапа, либо "писать" свои шелл (или любые другие) скрипты "выкладки" приложения. не имея необходимых знаний - придется очень много гуглить.

P.S. лично я не использую ни vagrant, ни docker на бою, только для разработки.

Изменено covobo (07.08.2017 14:11:23)

Не в сети

#3 07.08.2017 14:28:03

Re: Публикация проекта

Миграции создал, ещё в начале, когда вязал БД. В ларавел это реализовано очень просто. Очень понравилось)
То бишь добавляем в гитигнор шлак, потом запихиваем в репозиторий папку проекта, а потом при адд/коммите он автоматом понимает что коммитить, а что нет, да?

Не в сети

#4 07.08.2017 14:30:41

Re: Публикация проекта

Кстати, базу же тоже нужно бы выгрузить, или как?

Не в сети

#5 07.08.2017 14:41:47

Re: Публикация проекта

То бишь добавляем в гитигнор шлак, потом запихиваем в репозиторий папку проекта, а потом при адд/коммите он автоматом понимает что коммитить, а что нет, да?

да, git status отобразит тебе все измененные файлы, ты можешь выполнить git add ., чтобы закомитить все изменившиеся файлы, либо можешь через git add filename - закомитить только определенные файлы.

Кстати, базу же тоже нужно бы выгрузить, или как?

С тестовыми данными? Можешь добавить дамп базы в гит, но, для тестовых данных предпочтительно использовать сиды - https://laravel.com/docs/5.4/seeding . Смотри сам, как тебе удобней.

Не в сети

#6 07.08.2017 16:06:28

Re: Публикация проекта

Учитывая малое количество времени до сдачи - сделаю дамп)
Вы первый человек, который помог нормально разобраться! Спасибо!

Не в сети

#7 25.07.2018 20:25:27

Re: Публикация проекта

Примерно та же проблема! все написал все миграции есть и сиды! только php artisan на пустой базе ошибку выдает!

SQLSTATE[42S02]: Base table or view not found: 1146 Table 'landing3.setings' doesn't exist (S 
  QL: select * from `setings` where `setings`.`id` = 1 limit 1)

ищет базу которую я еще не сделал миграцией. как быть?

ps: как я планирую сделать
1.залил файлы на хостинг
2.запустил миграции и сиды
3.и пользуйся

Не в сети

#8 25.07.2018 21:48:39

Re: Публикация проекта

php artisan migrate

Делали?

ps: как я планирую сделать1.залил файлы на хостинг2.запустил миграции и сиды3.и пользуйся

deployer. Все это можно решить настроив раз деплой и дальше деплоить проект с всеми изменения одной командой с бакета.

Не в сети

#9 25.07.2018 21:59:25

Re: Публикация проекта

да! он даже список команд не выводит!(( про deployer в курсе. Но както хотелось бы подробнее понять всю систему. Понять почему он смотрит в базу и ищет таблицы которых нет!

Изменено Zortex (25.07.2018 22:01:29)

Не в сети

#10 30.07.2018 16:24:42

Re: Публикация проекта

Смотрите ваш код, проблема явно не в ларавел. Вы инициализируете или вызываете код с ваших "setings" где-то раньше.

Изменено lodar (30.07.2018 16:25:01)

Не в сети

#11 01.08.2018 20:12:01

Re: Публикация проекта

Спасибо, моя ошибка! Я объявил глобальную переменную в AppServiceProvider.php

Переделал, сделал класс в Middleware и там объявил их!
И все заработало.

Не в сети

Подвал раздела