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

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

無法從表模型中獲取名稱并使用 Laravel 將其顯示在視圖中

無法從表模型中獲取名稱并使用 Laravel 將其顯示在視圖中

PHP
達(dá)令說 2021-11-05 12:53:31
我正在嘗試使用存儲在用戶表中的我subject_name從表中獲取 ,但是每當(dāng)我嘗試這樣做時,我都會收到此錯誤。有什么幫助嗎?subjectsubject_id這種關(guān)系是一個用戶只能注冊一個主題,多個用戶可以選擇一個主題,因此是一對多的關(guān)系`Illuminate \ Database \ QueryException (42S02)SQLSTATE[42S02]: Base table or view not found: 1146 Table 'myunimentor_database.subject_user' doesn't exist (SQL: select `subjects`.*, `subject_user`.`user_id` as `pivot_user_id`, `subject_user`.`subject_id` as `pivot_subject_id` from `subjects` inner join `subject_user` on `subjects`.`id` = `subject_user`.`subject_id` where `subject_user`.`user_id` = 1)Previous exceptionsSQLSTATE[42S02]: Base table or view not found: 1146 Table 'myunimentor_database.subject_user' doesn't exist (42S02)`用戶模型<?phpnamespace App;use Illuminate\Notifications\Notifiable;use Illuminate\Contracts\Auth\MustVerifyEmail;use Illuminate\Foundation\Auth\User as Authenticatable;use App\UserType;use App\Subject;class User extends Authenticatable{    use Notifiable;    /**     * The attributes that are mass assignable.     *     * @var array     */    protected $fillable = [        'first_name', 'last_name', 'type', 'username', 'password',    ];    /**     * The attributes that should be hidden for arrays.     *     * @var array     */    protected $hidden = [        'password', 'remember_token',    ];    /**     * The attributes that should be cast to native types.     *     * @var array     */    protected $casts = [        'email_verified_at' => 'datetime',    ];    public function getAllUsers() {        return User::all();     }     public function userTypes()     {         return $this->belongsTo('App\Users');     }     public function subjects()    {        return $this->belongsToMany('App\Subject');    }}
查看完整描述

2 回答

?
眼眸繁星

TA貢獻(xiàn)1873條經(jīng)驗 獲得超9個贊

在您的用戶模型中,關(guān)系應(yīng)該是belongsTo()


 public function subject(){

    return $this->belongsTo('App\Subject','subject_id','id');

}

現(xiàn)在您可以訪問您的主題名稱 Auth::user()->subject->subject_name


正如您所說,一個用戶只有一個主題,因此用戶 只屬于一個主題。


主題可以有多個用戶,這意味著HasMany。 用戶模型 ->所屬主題 主題模型 ->擁有用戶的HasMany


請在此處查看更多信息。https://laravel.com/docs/5.8/eloquent-relationships#one-to-many


查看完整回答
反對 回復(fù) 2021-11-05
?
守著一只汪

TA貢獻(xiàn)1872條經(jīng)驗 獲得超4個贊

在您的用戶模型中,關(guān)系應(yīng)該是belongsTo()


 public function subject(){

    return $this->belongsTo('App\Subject','subject_id','id');

}

現(xiàn)在您可以訪問您的主題名稱 Auth::user()->subject->subject_name


正如您所說,一個用戶只有一個主題,因此用戶 只屬于一個主題。


主題可以有多個用戶,這意味著HasMany。 用戶模型 ->所屬主題 主題模型 ->擁有用戶的HasMany


請在此處查看更多信息。https://laravel.com/docs/5.8/eloquent-relationships#one-to-many您的belongsToMany關(guān)系導(dǎo)致了問題。它導(dǎo)致 laravel 認(rèn)為有一個名為subject_user的數(shù)據(jù)透視表,但遺憾的是沒有數(shù)據(jù)透視表。所以改變你的關(guān)系到belongsTo


public function subject(){

    return $this->belongsTo('App\Subject','subject_id');

}

這是另一個問題。在可填充數(shù)組中的用戶模型中,沒有 subject_id。所以subject_id 不會保存在數(shù)據(jù)庫中。將此添加到您的可填充數(shù)組中。


查看完整回答
反對 回復(fù) 2021-11-05
  • 2 回答
  • 0 關(guān)注
  • 167 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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