Александра:
>Не вижу причины разработчику пропадать
Всякое может быть. Фрилансеры-одиночки имеют свойство пропадать в самый неподходящий момент.
Тем более если проект долгосрочный, то риск увеличивается.
Так же вы забываете про поддержку проекта. Фрилансер-одиночка может закончить и сдать проект, но вот с поддержкой могут возникнуть проблемы, и вам придется искать нового исполнителя, которому придется разбираться в куче кода написанного другим разработчиком.
С фирмой в этом плане проще.
Станислав Почепко: можно сделать немного проще:
- переопределить метод newQuery у Model
- использовать механизм scope. Посмотрите как это сделано для SoftDeletes трейта.
Станислав Почепко: если использовать как трейт, то там ничего и не нужно. Просто пилим все необходимые функции, а затем выносим этот функционал в отдельный composer пакет.
Станислав Почепко: зачем пакет? Просто наследуем Eloquent, и переопределяем нужные нам методы. Делаем модель EloquentMutliLanguage и все остальные модели которые должны быть многоязычными наследуем от нее.
Какие именно переводы нужно хранить в БД?
Я для переводов обычно использую стандартные lang файлы, а к БД храню только пути (например: 'settings.general.shutdown') и во view вывожу просто через trans($model->name).
Если не нужен поиск по переводам, то вполне сойдет.
Станислав Почепко: я не думаю что тут можно сделать что-то совсем универсальное и гибкое. Требования всегда разные.
В итоге все равно придется форкать пакет и перепиливать под себя, так как иначе никакой гибкости не будет, слишком много возможных вариантов применения.
Александр Ковальчук: нужно логи смотреть. Возможно хеш неправильно генерится.
Нужно добавить логирование после каждого действия, и смотреть по логам где затык.
kornilov-s: у вас ошибка в тексте. Вы неправильно составляете буквы в слова. Буквы должны быть составлены так:
"Подключил данный плагин. Захожу на страницу комментариев, оставляю комментарий, но не срабатывает. Я делаю так {описание}. Ожидаю получить {описание}, но получаю {описание}."
Кирилл Несмеянов:
>А рефакторинг зачастую скучное и унылое дело, как следствие смысла смотреть его не особо много.
Как раз таки рефакторинг был бы полезен новичкам, так как это одна из сложнейших тем для освоения.
Andrzej Wielski: именно поэтому стоит отказаться от готовых панелей. Они максимум подходят для простенького блога, или homepage. Что-то сложнее обычных CRUD - и вы почувствуете острую боль чуть-ниже спины.
Виктор: никак.
>Например, у модели 10-15 связей belongsToMany и нужно их сохранять вместе с моделью.
belongsToMany - нельзя сохранять вместе с моделью. Вы это делаете отдельно, для каждой конкретной связи, через $model->{связь}()->create/update/sync/attach().
У Eloquent нету возможности узнать прописанные связи, пока вы их явно не вызовите.
>Не вижу причины разработчику пропадать
Всякое может быть. Фрилансеры-одиночки имеют свойство пропадать в самый неподходящий момент.
Тем более если проект долгосрочный, то риск увеличивается.
Так же вы забываете про поддержку проекта. Фрилансер-одиночка может закончить и сдать проект, но вот с поддержкой могут возникнуть проблемы, и вам придется искать нового исполнителя, которому придется разбираться в куче кода написанного другим разработчиком.
С фирмой в этом плане проще.