第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在 Laravel 中連接表?

如何在 Laravel 中連接表?

PHP
喵喔喔 2023-04-15 20:22:36
我是 Laravel 的新手,我有一個關(guān)于 Eloquent 的問題:這是我的數(shù)據(jù)庫表結(jié)構(gòu):users- id- user_id- username- name- email- password- email_verified_at- remember_tok- created_at- updated_atchallenges- id- challenge_id- category_id- hashtag- title- description- duration- link- created_at- updated_at- user_iduser_challenges- user_id- challenge_id- duration- created_at- updated_at我想要實現(xiàn)的是顯示用戶的挑戰(zhàn),例如,如果用戶在用戶儀表板中加入挑戰(zhàn),我想顯示他加入的挑戰(zhàn),以及用戶創(chuàng)建的挑戰(zhàn)(如果他創(chuàng)建了任何);模型\用戶.phpclass User extends Authenticatable{    use Notifiable;    public function challenges() {        return $this->hasMany(Challenge::class, 'user_id');    }    public function userChallenges() {        return $this->hasMany(UserChallenge::class, 'user_id');    }}模型\挑戰(zhàn).phpclass Challenge extends Model{    public function user () {        return $this->belongsTo(User::class, 'user_id');    }}模型\UserChallenge.phpclass UserChallenge extends Model{    public function user () {        return $this->belongsTo(User::class, 'user_id');    }}這是我的家庭控制器中的內(nèi)容: App\Http\Controllers\HomeController.phpclass HomeController extends Controller{    public function index()    {        $user_id = auth()->id();        $user = User::find($user_id);        return view('home')            ->with('challenges', $user->challenges)            ->with('userChallenges', $user->userChallenges);    }}這是我目前在“我的儀表板”中獲得的“加入挑戰(zhàn)”的內(nèi)容 - 但如何在返回視圖時加入表格,以便我也可以獲得挑戰(zhàn)主題標(biāo)簽標(biāo)題?就像我在“我的挑戰(zhàn)”部分下獲得的一樣? 儀表板更新:我應(yīng)該將什么添加到我的數(shù)據(jù)庫中,以便我可以計算已加入挑戰(zhàn)的用戶數(shù)量?
查看完整描述

1 回答

?
當(dāng)年話下

TA貢獻1890條經(jīng)驗 獲得超9個贊

為了獲得用戶創(chuàng)建的挑戰(zhàn),我相信您已經(jīng)正確地做到了。


并讓用戶加入挑戰(zhàn)。您幾乎可以正確使用數(shù)據(jù)透視表。您可以在 laravel 文檔中查看多對多關(guān)系。


這些是用于檢索用戶創(chuàng)建的挑戰(zhàn)和用戶加入的挑戰(zhàn)的示例代碼。這些代碼應(yīng)該駐留在您的用戶模型中,您應(yīng)該保留該模型。


public function created_challenges()

{

    return $this->hasMany(Challenge::class,'user_id','id');

}


public function joined_challenges()

{

     return $this->belongsToMany(Challenges::class, 'user_challenges', 'user_id', 'challenges_id');

}

一旦關(guān)系正常工作,您就可以簡單地使用從關(guān)系返回的集合。將 傳遞$user->joined_challenges給視圖后,您可以執(zhí)行以下操作


@foreach ($joined_challenges as $challenge)

    <p>{{$challenge->hashtag}}</p>   

    <p>{{$challenge->title}}</p>   

@endforeach

讓我知道這行得通,干杯!;)


查看完整回答
反對 回復(fù) 2023-04-15
  • 1 回答
  • 0 關(guān)注
  • 126 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號