Laravel: 检索用户输入的数据
Laravel: Retrieve data inputted by user
我是 Laravel 的新手,我对如何检索某些用户输入的数据感到困惑。
在我的项目中,有一个用户配置文件应该显示用户提交的所有表单。
这是我的控制器函数:
public function clientAccount(BookingRequest $bookings)
{
$client = Client::whereUserId(Auth::id())->with('user')->first();
$bookings = BookingRequest::with(Auth::id())->with('client')->first(); //unsure about here//
return view('client.account', compact('client','bookings'));
}
这是我的模型:
public function client()
{
return $this->belongsTo('App\Client', 'client_id', 'user_id');
}
我该如何解决这个问题?
编辑:
我试过使用它,但不知何故我没有得到任何显示
$bookings = BookingRequest::where('client_id',Auth::id());
如果关系需要是一对多的,这意味着一个客户有很多预订,那么在您的客户模型中您应该具有以下功能:
public function bookings()
{
return $this->hasMany(BookingRequest::class);
}
那你只需要找到客户,对他你就用
$client->bookings()
它将列出该客户的所有预订。
来自纳科夫的后续:
public function clientAccount()
{
$client = Client::whereUserId(Auth::id())->with('user')->first();
$bookings = $client->bookings();
return view ('client.account')->with('bookings', $bookings)
}
并且在您的用户个人资料视图中:
foreach($bookings as $booking){
// do something with each booking
// e.g. var_dump($booking) to see the data you're working with
}
感谢您的所有回复!
我现在可以使用此方法检索数据:
public function clientAccount()
{
$client = Client::whereUserId(Auth::id())->with('user')->first();
$bookings = $client->booking()->with('client')->get();
return view('client.account', compact('client','bookings'));
}
在我的模型中,我使用了这个
public function booking()
{
return $this->hasMany('App\BookingRequest', 'client_id', 'user_id');
}
我是 Laravel 的新手,我对如何检索某些用户输入的数据感到困惑。
在我的项目中,有一个用户配置文件应该显示用户提交的所有表单。
这是我的控制器函数:
public function clientAccount(BookingRequest $bookings)
{
$client = Client::whereUserId(Auth::id())->with('user')->first();
$bookings = BookingRequest::with(Auth::id())->with('client')->first(); //unsure about here//
return view('client.account', compact('client','bookings'));
}
这是我的模型:
public function client()
{
return $this->belongsTo('App\Client', 'client_id', 'user_id');
}
我该如何解决这个问题?
编辑:
我试过使用它,但不知何故我没有得到任何显示
$bookings = BookingRequest::where('client_id',Auth::id());
如果关系需要是一对多的,这意味着一个客户有很多预订,那么在您的客户模型中您应该具有以下功能:
public function bookings()
{
return $this->hasMany(BookingRequest::class);
}
那你只需要找到客户,对他你就用
$client->bookings()
它将列出该客户的所有预订。
来自纳科夫的后续:
public function clientAccount()
{
$client = Client::whereUserId(Auth::id())->with('user')->first();
$bookings = $client->bookings();
return view ('client.account')->with('bookings', $bookings)
}
并且在您的用户个人资料视图中:
foreach($bookings as $booking){
// do something with each booking
// e.g. var_dump($booking) to see the data you're working with
}
感谢您的所有回复!
我现在可以使用此方法检索数据:
public function clientAccount()
{
$client = Client::whereUserId(Auth::id())->with('user')->first();
$bookings = $client->booking()->with('client')->get();
return view('client.account', compact('client','bookings'));
}
在我的模型中,我使用了这个
public function booking()
{
return $this->hasMany('App\BookingRequest', 'client_id', 'user_id');
}