我正在寻找一种更好的写作方式。我觉得必须有更好的方法吗?
class link extends Model
{
public function click()
{
return $this->hasOne('App\click', 'id' ,'click_id');
}
}
class click extends Model
{
public function link()
{
return $this->hasOne('App\link');
}
}
型号:
{{1}}
顺便说一下。一切正常,只是希望改进我的代码编写:)
答案 0 :(得分:1)
public static function logClick($lId){
click::whereHas('link', function($q)use($lId){
$q->where('id', $lId);
})
->increment('clicks');
}
这应该
编辑:如果您想返回点击次数
public static function logClick($lId){
$click = click::whereHas('link', function($q)use($lId){
$q->where('id', $lId);
})
->increment('clicks');
return $click->clicks;
}
这一个班轮的优势在于是一个查询。如果$q->where('id', $lId);
无效,请务必使用$q->where('links_table_name.id', $lId);
答案 1 :(得分:1)
public static function logClick($lid)
{
$clicks = link::find($lid)->click;
$clicks->increment('clicks');
return $clicks;
}