Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Не используйте Laravel... он доводит...
Вот когда вы говорили про «по памяти», то были близки к истине) Прочитайте всё-таки разок документацию с офф.сайта. Как книжку, за один присест. Многие моменты у вас прояснятся, а для остальных сформируется когнитивная карта.
Bloom, продолжайте, очень интересно. Я от Ваших сравнений уже начал подумывать над более подробным ознакомлением с Yii)
Proger_XP, с документацией и маскировкой фасадами действительно швах. Но на счёт велосипедов не соглашусь. На мой взгляд Laravel ближе остальных к Unix-way, а замена любых компонент/пакетов/подсистем (не внутри фреймворка, а внутри велосипеда) в сочетании с Composer и теми же фасадами — проще простого.
Blade - извращение
Смысл шаблонизаторов в PHP — упрощённый синтаксис (спорно) и наследование шаблонов. Blade с этим справляется. А если Вы не любите шаблонизаторы, от него можно просто отказаться)
Документация просто убивает отсутствием поиска по ключевым словам, куда больше информации нахожу на сторонних ресурсах.
Действительно затруднения есть. В документации описаны лишь общие приёмы работы в формате скорее ликбеза, чем справочника. Но тут, кмк, особенность концепции. Laravel состоит большей частью из сторонних библиотек и компонентов, досконально описывать их в документации нет смысла, для глубокого понимания лучше читать доки на их собственных сайтах.
Где информации больше? Где сразу становится понятно, что делает метод?
В документации Yii. Laravel тут проигрывает всухую.
PHPStorm вообще не дает никаких преимуществ в обращении с ним
Частичная поддержка в EAP уже есть. Сейчас можно использовать: Laravel IDE Helper.
К примеру такая вещь как {{ url('css/stile.css')}} в layout. Покажите мне в офф документации где написано как это использовать?
В yii это видно сразу в тестовом приложении.
Вот тут и есть разница в подходах, имхо: Yii про гнутьё уже готового велосипеда, Laravel про написание своего.
P.S. Камрад slider23 опередил)
Bloom, и вот опять дело в логике и вкусах конкретного индивида)
> Чисто мое мнение - без 100 грамм не разобраться.
> Очень сложно, на первый взгляд, сделана маршрутизация
> Документация не последовательна.
Это точь-в-точь моё первое впечатление от Yii
Мне кажется, ключевой вопрос не «можно-нельзя» (никто ведь не может запретить), а «целесообразно ли».
ИМХО, при разработке большого проекта крупной[, распределённой] командой, главное — дисциплина написания кода и высокоуровневая архитектура. Laravel же по сравнению с более строгими фреймворками, с одной стороны, предлагает большую свободу в выборе решений и способов их реализации (+ к архитектуре, - к дисциплине), а с другой привносит большую долю неопределённости, анархии (- к архитектуре, - к дисциплине, + дополнительный объём работы по разработке и согласованию конвенций).
Т.е. в больших проектах Laravel целесообразно использовать только при наличии грамотного архитектора и дисциплинированной команды. В остальных случаях лучше подобрать что-нибудь строгое, с большим количеством готовых соглашений и паттернов. Это позволит избежать разброда и шатания.
Кто что думает?
Аналогичная ситуация, после Laravel в Yii постоянное ощущение, что что-то не то и не так.
И у меня аналогично, только в другом порядке. Сначала попробовал изучить Yii, а уже после наткнулся на Laravel. Определяющим фактором в пользу Laravel, стало совпадение логики фреймворка с моей собственной.
Yii к месту и не к месту делает серьёзное лицо и заставляет использовать слоёный пирог из абстракций, паттернов, наследования и прочего оверинжиниринга. Laravel же, позволяет подойти к проблеме по-человечески, без напускного формализма и лишней бюрократии.
В Вашей ситуации я бы попробовал сесть всей командой и написать несложный проект, сначала на одном фреймворке, потом на другом. И уже по итогу решать на чём команде удобнее разрабатывать.
Как вариант можно отсортировать готовые коллекции соседних точек:
Collection->sortBy(Closure $callback)
Как правильно удалять элементы коллекций (Illuminate\Database\Eloquent\Collection)? Collection->filter()?
т.е. при загрузке фронта вы тянете весь мусор с бэка.
Что вы имеете в виду под мусором? Каким образом что-то может тянуться, если на фронте/бэке используются разные контроллеры/шаблоны?
P.S. Использую способ аналогичный предложенному @slider23, только для управления пользователями подключаю Cartalyst\Sentry.
Попробуйте так (тоже добавляется в самом конце routes.php):
Route::any('{query}', 'HomeController@getIndex')->where('query', '.*');
Возможно ли сделать что-то подобное поведению register_shutdown_function() до версии 4.1?
Т.е. отдать страницу пользователю и продолжить работу скрипта.
Кажется, вам нужны secure_asset и secure_url. Документация: Helpers → urls
Речь идет о том что вызов link_to_action или link_to_route самостоятельно определял активность ссылки и рендерил ее с добавлением класс active.
Здесь есть несколько вариантов такого link_to_action.
Не не, это какая-то шляпа, считаю подобную реализацию ужасной.
Зато она наиболее проста, очевидна и накладывает минимум ограничений.
Скорее всего я видел метод whereNotIn() класса Illuminate\Database\Query\Builder. Странно, что в Eloquent нет аналогичного.
В таком случае, упомянутый вами способ — наиболее практичный. Спасибо.
Где-то попадалась на глаза такая возможность: из БД выбирались похожие записи для блока «related entries» и чтобы не дублировать контент, текущая запись исключалась из запроса по id встроенным методом. Возможно, что-то путаю, в таком случае подбросьте, пожалуйста, «best practices» для упомянутого случая. Спасибо.
Доброго времени, уважаемые камрады!
Как подключить и использовать стороннюю библиотеку/пакет в Laravel? В частности нужно подключить RUtils.
В секции require файла composer.json прописал соответствующий пакет, он успешно загрузился. А дальше как действовать?
Спасибо!
Заранее извините за глупый вопрос Но куда класть View::composer? Прямо в /app/start/global.php?
Решаю схожую задачу. В разнообразии возможных вариантов здорово помогает разобраться презентация Билла Карвина. Полиморфные связи на 32 слайде.
Большое спасибо)
Как правильно задать роут для ЧПУ произвольной длины и конструкции?
Пока сделал так:
Route::any('{url}', 'FrontController@showPage')
->where('url', '.*');
Спасибо.
Для одиночной модели
Именно модели или строки?
P.S. И вдогонку оффтоп: будет ли Cache::forever надежным key:value хранилищем или стоит искать что-то другое?
Под вручную имею ввиду без применения модели и прямой записи текущей даты в поля таблицы. Думал есть встроенные методы, вроде:
DB::table('table')->where('id', $id)->updateTimestamp()
Доброго времени!
Как правильно вручную обновлять столбцы created_at и updated_at через DB::table('table')->update()? (Используется SQLite)
Адаптированный вариант из Laravel 3:
URL::action('controller@method', array($argument))
— не работает.
Ой-ой-ой! Я нерадивый программист: обращался к методу ресурс-контроллера, который сам же в роуте отключил! Так что все работает.
devpilgrim, спасибо.