2017-08-17 43 views
0

嗨,我怎麼可以更新兩個表我的代碼值,如圖所示如下情況:更新兩個使用laravel

public function subscriberprofileupdate($ids, Request $request) { 
    $profile = Subscriberinfo::find($ids); 
    $id = \Auth::user()->id; 
    $user_id = \Auth::user()->user_id; 
    $subscriber_id = \Auth::user()->subscriber_id; 
    $inputteacher = $request->all(); 

    $profile->contact_person_firstname = $inputteacher['contact_person_firstname']; 
    $profile->contact_person_lastname = $inputteacher['contact_person_lastname']; 
    $profile->email = $inputteacher['email']; 
    $profile->save(); 
    return Redirect('/subscriber/profile'); 
} 

如果我可以更新用戶表電子郵件意味着它也將在用戶表更新也通過使用user_id。 我該如何做到。

回答

0

你可以簡單:

User::where('id',$user_id)->update(['email' => $inputteacher['email']]); 

其中users.id$user_id

+0

它的工作非常感謝你.. – Nishanth

+0

不客氣:) – aaron0207

0

更好的方法是在訂戶表中添加一個名爲user_id的新列,如果您已在模型中給出正確的關係,則可以獲取數據。

+0

user_id是也在那裏用戶tables.we可以獲取從用戶表本身USER_ID值。 – Nishanth

0

當更新屬於關聯關係,這將更新Users表電子郵件字段,你可以使用associate方法。

例如:

$inputteacher = $request->all(); 
$userdetail = User::find(1); 
$userdetail->firstname = $inputteacher['contact_person_firstname']; 
$userdetail->lastname = $inputteacher['contact_person_lastname']; 

$profile = Subscriberinfo::find($ids); 
$profile->contact_person_firstname = $inputteacher['contact_person_firstname']; 
$profile->contact_person_lastname = $inputteacher['contact_person_lastname']; 
$userdetail->profiles()->save($profile); 

//This will save not only a model, but also all of its relationships 
$userdetail->push(); 
+0

@Nishanth我建議你使用這種方法'belongsTo'關係。 –