我在我的应用程序中有以下模型:
现在我正在尝试运行以下查询:
现在我想要它从我的“users”表中仅选择“电子邮件”和“电话号码”,并从我的“customer_details”表中选择“first_name”、“last_name”,但每当我尝试这样做时,它总是返回“customer_details”为“null”。
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class User extends Model
{
public function customer_details()
{
return $this->hasOne(CustomerDetails::class);
}
}
CustomerDetails.php
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class CustomerDetails extends Model
{
public function user()
{
return $this->belongsTo(User::class);
}
}
现在我正在尝试运行以下查询:
$user = User::select('email', 'phone')
->where('id', Auth::user()->id)
->with('customer_details')
->first();
现在我想要它从我的“users”表中仅选择“电子邮件”和“电话号码”,并从我的“customer_details”表中选择“first_name”、“last_name”,但每当我尝试这样做时,它总是返回“customer_details”为“null”。
return $this->hasOne('App\Models\CustomerDetails', 'user_id');
应该是:return $this->hasOne('App\Models\CustomerDetails', 'user_id','id');
- Punit Patel$user = Auth::user()->load("customer_details");
避免。 - miken32