gpt4 book ai didi

php - 从 mysql DB 获取所需数据时遇到一些问题

转载 作者:行者123 更新时间:2023-11-29 09:31:57 25 4
gpt4 key购买 nike

我有两个Mysql表。一个是matches,另一个是betsettings。我将 match_id 作为 betsettings 表中的外键。现在如何获取每个 match_name 的 betsettings 信息?我想显示每场比赛该比赛名称下的所有投注设置信息。我正在使用 laravel

匹配表:

    Schema::create('matches', function (Blueprint $table) {
$table->increments('id');
$table->string('match_name');
$table->timestamps();
});

投注设置表:

    Schema::create('betsettings', function (Blueprint $table) {
$table->increments('id');
$table->integer('match_id')->unsigned();
$table->dateTime('close_time');
$table->string('status')->default('active');
$table->timestamps();
});

Schema::table('betsettings', function( $table) {
$table->foreign('match_id')
->references('id')
->on('matches')
->onDelete('cascade')
->onUpdate('cascade');
});

最佳答案

您可能想要查看 Eloquent 关系,以更好地理解 Laravel 如何处理这些关系

我假设您每个表都有模型,让我们使用模型定义这些表之间的关系。

在匹配模型中

public function betsettings(){
return $this->hasOne(BetSetting:class);
}

在投注设置模型中

public function match(){
return $this->belongsTo(Match:class);
}

现在您可以使用预加载来获取每场比赛的投注设置。这是一个例子

$match = Match::with("betsettings")->find($id);

$match->betsettings // gives you related bet settings

关于php - 从 mysql DB 获取所需数据时遇到一些问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58526472/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com