【发布时间】:2018-02-10 09:49:42
【问题描述】:
我的系统中有表格。
- 学生
- 文章
- 类别
一个学生可以写很多篇文章,一篇文章只属于一个学生。而且一篇文章只能有一个类别。
控制器
public function all_articles_by_student_by_category(Request $request){
$students_id = $request->students_id;
$categories_id = $request->categories_id;
$article_list = Students::find($students_id)->articles->all();
//This return Something like, Select All Articles Written by Damith
}
型号
class Students extends Model
{
protected $fillable = ['id','first_name', 'last_name', 'age', 'created_at', 'updated_at'];
public function articles()
{
return $this->hasMany('App\Articles');
}
}
我想得到什么
类似,为技术类别选择 Damith 撰写的所有文章(类别名称应该在那里)
到目前为止我能做到的事情
类似,使用 $article_list = Students::find($students_id)->articles->all(); 选择 Damith 撰写的所有文章(您可以从控制器中找到此代码)
我想从你这里得到什么
如何修改$article_list = Students::find($students_id)->articles->all(); 以获取类似“选择所有由 Damith 撰写的文章作为技术类别”之类的信息。 (类别名称必须在结果中,并且在类别表中,并且在条件下您可以使用文章表中的 category_id)
【问题讨论】:
-
答案很简单,请查看 Laravel 文档了解如何使用 eloquent。如果你能够做一个简单的 SQL 查询,这意味着你可以用 eloquent 来做。只需学习语法。
标签: php laravel laravel-5 laravel-eloquent laravel-5.5