У меня есть две таблицыКак получить данные из другой таблицы по указанному столбцу?
// пользователей ID имя пользователя пароль
// Профили user_id логотип
я хочу, чтобы получить информацию о профиле, который User_ID равно зарегистрированному идентификатору пользователя, но я не могу этого сделать. как я могу это сделать?
/Профиль модель
<?php
namespace App\Http\Models;
use Illuminate\Database\Eloquent\Model;
class Profile extends Model
{
public function user()
{
$this->belongsTo('App\User');
}
}
// клиент контроллер
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Models\Profile as Profile;
use App\Http\Requests;
use Auth;
class ClientController extends Controller
{
public function index()
{
$profile = Profile::find(Auth::user()->id);
return view('client.profil')->with($profile);
}
}
я получил эту ошибку:
SQLSTATE[42S22]: Column not found: 1054 Unknown column 'profiles.id' in 'where clause' (SQL: select * from `profiles` where `profiles`.`id` = 1 limit 1)
обычно это может быть так: выбрать * из профилей, где user_id = 1 // 1 зарегистрирован user_id
я получил эту ошибку вызова функции члена addEagerConstraints() на нуле – Hanik
@Hannik Это потому, что вы не 'return' из вашего' пользователя общественной функции() 'в вашей модели' Profile'. 'return $ this-> belongsTo ('App \ User');' – Ohgodwhy
та же ошибка: вызов функции-члена addEagerConstraints() по нуле – Hanik