2016-04-16 18 views
0

私はlaravelを初めて使っています。私はたくさんの推奨事項を試しましたが、必要なものは何も働いていません。設計のための要件へ私の登録を2人のテーブルアーティストと通常のユーザーテーブルに分割しています。問題は、電子メールの確認がアーティストテーブルを介して行われることです。そのプロセスが完了したら、私は単に、アクティブな列のuserテーブルの最後に作成されたユーザーを0から1に更新したいと思うでしょう。Laravel 5.2最後に作成されたレコードを更新します。

これを動作させる方法を理解できません。

return $this->users()->where('verified')->first()->verified()- >orderBy('created_at', 'desc')->first(); 

はその後更新が

User::orderby('created_at', 'desc')->first(); 

はその後更新が

$user = User::find(1)->verified()- >update(array(
'Verified' => '1' 
    )); 

上記の非が働いている動作しませんでした試みた動作しませんでした走りました。どんな提案も感謝しています。あなたは(users表にして0にverifiedを設定)、登録時にユーザを作成しているし、それらが確認されるまでartists表に自分の情報の一部を入れて -

+0

あなたは本質的にメール確認を行っていますか?これを行うにはもっと簡単な方法があります。あなたが選択した方法は確認メールを送信し、リンクをクリックすると最近作成されたユーザーを確認するように聞こえます - この間に誰かがサインアップするとどうなりますか?あなたは間違った人物を確認するでしょう。あなたがやりたがっている電子メールの確認だけであれば、これを行うためのより簡単な方法をあなたに伝えることができますか? – James

+0

私の設定では、フォームに記入して送信依頼を送信すると、そこにメールをチェックして確認リンクをクリックするように指示します。彼らが提出した情報はすでにデータベースに送られていますが、ログインが確認されるまでログインやダッシュボードにアクセスすることはできません。問題は、電子メールを確認した後にのみ、ユーザーが入力した情報をユーザーテーブルに送信することです。ですから問題は、作成された最後のレコードをどのようにプルして、ユーザーテーブルの検証済みステータスを0から1に変更するのか分かりません。何を言っているのが簡単で、laravelを通して両方のテーブルに追加することができます – shutterfly

+0

なぜ、その情報に 'user_id'を割り当てるだけですか?そして、それを使って自分のメールを確認したら正しい情報を移動させますか? – James

答えて

0

は、要件、およびあなたは物事をやっている方法を考えます。

テーブルにusers_idの列を追加し、この値を新しく作成したユーザーのidに設定します。

確認すると、artistsテーブルでuser_idを使用して情報を確認し、必要な場所に移動できます。

+0

それを調べることなくuser_idをどのように知ることができますか? – shutterfly

+0

ユーザーを作成するのと同じ機能でそれを行うと、それでもユーザーオブジェクト内でアクセスすることができます。 – James

関連する問題