私のデータベースでは、私はnotification
とalertFrequency
という2つのテーブルを持っています。通知にはフィールドid and website_url
があり、警告頻度はid
とnotification_id
です。どちらの表にも1対多のモデルがあります。通知には、1つまたは複数のalertFrequency
を含めることができます。laravelの1対多の関係
class Notification extends Model {
public function alertFrequencies() {
return $this - > belongsToMany('AlertFrequency::class');
}
}
namespace App;
use Illuminate\ Database\ Eloquent\ Model;
class AlertFrequency extends Model {
protected $table = 'alertFrequencies';
public function notification() {
return $this - > belongsTo(Notification::class);
}
}
通知モデルでは、alertという関数を作成しました。この関数は、特定のwebsieに関連付けられた最も早いアラートを表示します。
public function alert(){
$alert_frequency = AlertFrequency::find('notification_id')->first();
$o_notification = $this->alertFrequencies()->where('notification_id',$alert_frequency->id)
->select('created_at')->orderBy('created_at')->first();
if($alert_frequency ==null){
return false;
}
return created_at;
}
これはデータを抽出する正しい方法ですか?私はどんな提案や助けに感謝しますか?
私はそれがはるかに違いはありませんと思いました。私もそれでそれをチェックします。 tnx –
どこにこのコードを書くか、古いコードを置き換えるべきですか? –
$ alert_frequency = AlertFrequency :: with( '通知') - > orderBy( 'created_at'、 'desc') - > first(); –