私のデータベースには2つのテーブルがあります。Users and Complains外部キーでデータを取得
ユーザーテーブル:
id |名前|パスワード
苦情の表
id | user_id |タイトル|本文
user_idは外部キーです。 user_idに基づいてクレームテーブルからタイトルと本文を取得するにはどうすればよいですか?
この
は、私がこれまで持っているものですが、私はuser_idを私のユーザーモデルに特定のデータを取得できません。
<?php
namespace App;
use Illuminate\Notifications\Notifiable;
use Illuminate\Foundation\Auth\User as Authenticatable;
class User extends Authenticatable
{
use Notifiable;
/**
* The attributes that are mass assignable.
*
* @var array
*/
protected $fillable = [
'name', 'surname', 'regnumber', 'course', 'department', 'email', 'password',
];
/**
* The attributes that should be hidden for arrays.
*
* @var array
*/
protected $hidden = [
'password', 'remember_token',
];
}
マイプロフィールコントローラー:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\User;
use App\Complain;
use App\Feedback;
use App\Item;
use Illuminate\Support\Facades\Redirect;
use Session;
use Auth;
class ProfileController extends Controller
{
public function profile($user_id){
$user = User::whereId($user_id)->first();
$complains = Complain::paginate(2);
return view('user.profile', compact('user', 'complains'));
}
}
マイビュー:
@foreach($complains as $complain)
<div>
<h3 class="operator-complain-title">Title: </h3>
<p>{{ $complain->title }}</p>
<h3 class="operator-complain-title">Complain:</h3>
<p>{{ $complain->body }}</p>
</div>
<hr>
@endforeach
誰でもアイデアを共有してください。
マイユーザモデルはn otモデルを拡張すると、Authenticatableを拡張します。関係を追加すればロジックは機能するのだろうか? – Martin
イルミネーション\ Foundation \ Auth \ Userモデルを拡張します。それはあなたのために働くでしょう。 – btl
私は不満とユーザーモデルの関係をそれぞれ作成しました。私のコントローラには、次のものがあります。$ complain = Complain :: find($ id); ビューを戻す( 'user.profile') - > withComplain($ complain);私の見解では、私はこのエラーが発生します:foreach()の引数が無効です – Martin