Я изучаю laravel. Я хочу знать, что если я могу использовать построитель запросов внутри модели laravel, которая расширяет Eloquent или нет. Я прочитал о MVC, что Модель должна быть толстой, а контроллеры должны быть тонкими. Но когда я пытаюсь сделать что-то с помощью mvc, например, вставляя сообщение в db или извлекая сообщения из базы данных, мои контроллеры содержат большинство запросов.Laravel Model issue
ответ
мое личное мнение в Ларавеле. В соответствии с тем, что я вижу в течение этого двух лет, правильно изучайте контроллеры или маршруты.
Первый. практиковать на маршрутах, делать код. вы можете найти несколько примеров на Laravel.com.
Во-вторых. попытайтесь войти в рефакторинг. что означает ... что вам нужно улучшить свой код.
Надеюсь, это поможет.
Сохранение максимально возможной логики в ваших моделях - это действительно хорошая практика, потому что она сохраняет правила в одном месте. Например, если у вас есть модель сообщений в блоге, а не запрашивая модели в контроллере архивированных сообщений можно определить архивный атрибут в вашей модели, как это:
public function scopeArchived($query) {
return $query->where('archived', true);
}
после чего вы можете простой запрос для App\Post::archived()->get()
. Если логика определения «архивированной записи» изменяется позже, вы можете изменить ее в одном месте. Это также означает, что вы можете легко подключить фильтры. Если, например, у вас есть атрибут для фильтрации по автору:
public function scopeWrittenBy($query, User $user) {
return $query->where('author', $user->id);
}
... Вы можете приковать их вместе в контроллере с:
$user = App\User::first();
$archived_user_posts = App\Post::archived()->writtenBy($user)->get();
- 1. Laravel eloquent model - model extends model
- 2. CoreNLP Training Model Issue
- 3. CakePHP Join Model Issue
- 4. AngularJS ng-model issue
- 5. namespaced model + postgresql issue
- 6. Model Formset Issue
- 7. Ember Route model issue
- 8. Rails Model/Migrate Issue
- 9. Keras save model issue
- 10. Ember-Model init issue
- 11. Laravel eloquent model model with pivot
- 12. Laravel Model :: create или Model-> save()
- 13. MVC custom model binder issue
- 14. Binding model to view issue
- 15. Django Model/Template Arithmetic Issue
- 16. ng-model issue on logic
- 17. Laravel Global Settings Model
- 18. Laravel custom model casts
- 19. laravel map model properties
- 20. Laravel 5 Model mocking
- 21. Json Laravel Model
- 22. Laravel Красноречивого Model Properties
- 23. Laravel Category Model Relationships
- 24. Laravel like model
- 25. laravel model best practice
- 26. Laravel Model Events
- 27. Laravel Model Concrete Properties
- 28. Laravel model mock
- 29. Laravel Eloquent Model Relationships
- 30. Laravel Eloquent Model Unsindings
Я думаю, что это время вы должны расширить свое чтение за MVC. В качестве отправной точки я бы посоветовал вам взглянуть на уроки начинающих на laracasts.com и участвовать в дискуссиях на форуме. – Gufran