Php 如何在Laravel中使用一对多关系的条件
我使用的是Laravel4.2 我有以下型号: 用户和预订具有引用id中的用户模型的用户id 我想进行查询以检索Bookings.Start\u at>现在开始的预订 我想要这样的东西:Php 如何在Laravel中使用一对多关系的条件,php,database,laravel,laravel-4,Php,Database,Laravel,Laravel 4,我使用的是Laravel4.2 我有以下型号: 用户和预订具有引用id中的用户模型的用户id 我想进行查询以检索Bookings.Start\u at>现在开始的预订 我想要这样的东西: User::with('bookings')->where('starts_at' , '>' time())->get(); 但当条件应用于用户时,它会导致一个异常,因为用户并没有起始点 如何在仍然使用雄辩类的情况下解决这个问题 感谢您在控制器中使用此功能: 加载在用户id上联接的表用户和
User::with('bookings')->where('starts_at' , '>' time())->get();
但当条件应用于用户时,它会导致一个异常,因为用户并没有起始点
如何在仍然使用雄辩类的情况下解决这个问题
感谢您在控制器中使用此功能:
加载在用户id上联接的表用户和表预订,其中“bookings.started”>“2015-07-04”
User::with(['bookings'=>function($query){
$query->where('starts_at' , '>', date('Y-m-d'));
}])->get();
将模型放入“模型”文件夹
用户模型:
class User extends Eloquent {
protected $table = 'users';
protected $fillable = array('name','last_name');
public function bookings() {
return $this->hasMany('Bookings', 'user_id');
}
}
预订模式
起始日期格式应为年:月:日
class Bookings extends Eloquent {
protected $table = 'bookings';
protected $fillable = array('id','booking','user_id','start_at');
}
非常感谢你。这回答了我的问题。