Я пытаюсь создать свое первое приложение Laravel, следуя нескольким инструкциям в Интернете, и мне кажется, что я упускаю что-то очевидное. Вот код
ошибка
BadMethodCallException в строке Builder.php 2450: вызов неопределенного
метод Illuminate \ Database \ Query \ Builder :: address ()
User-модель
<?php
namespace App;
use Illuminate\Notifications\Notifiable;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Sentinel;
class User extends Authenticatable
{
use Notifiable;
protected $fillable = [
'email', 'password',
];
protected $hidden = [
'password',
'remember_token'
];
public function addresses()
{
return $this->hasMany('App\CustomerAddress');
}
}
CustomerAddress-модель
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class CustomerAddress extends Model
{
public function user()
{
return $this->belongsTo('App\User');
}
}
CustomerAddress-контроллер
<?php
namespace App\Http\Controllers;
use App\CustomerAddress;
use Illuminate\Http\Request;
class CustomerAddressController extends Controller
{
public function create(Request $request)
{
$address = new CustomerAddress();
$address->address = $request['address'];
$request->user()->addresses()->save($address);
}
}
Ошибка появляется после этого куска кода:
$request->user()->addresses()->save($address);
Есть идеи? Спасибо и ура
'model' => 'Cartalyst\Sentinel\Users\EloquentUser'
в 'model' => 'App\User'
использовать вашу модель пользователя с addresses
отношение определеноUser extends Authenticatable
в User extends \Cartalyst\Sentinel\Users\EloquentUser
расширить пользователя часового до модели пользователя вашего приложения`$ address = new CustomerAddress ();
$ address-> address = $ request-> input (‘address’);
$ Request-> пользователя () -> адреса () -> сохранить ($ адрес); `
и все должно быть персиковым
Других решений пока нет …