vendredi 23 décembre 2016

Laravel 5.3 + Sentinel: BadMethodCallException in Builder.php line 2450

I'm trying to build my first Laravel application by following a few guides on the internet and I'm feeling I'm missing something obvious. Here is the code.

Error

BadMethodCallException in Builder.php line 2450: Call to undefined method Illuminate\Database\Query\Builder::addresses()

User-Model

<?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-model

<?php
namespace App;
use Illuminate\Database\Eloquent\Model;

class CustomerAddress extends Model
{
    public function user()
    {
        return $this->belongsTo('App\User');
    }
}

CustomerAddress-controller

<?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);
    }
}

Error appears after this piece of code:

$request->user()->addresses()->save($address);

Any ideas? Thanks and cheers



via Chebli Mohamed

Aucun commentaire:

Enregistrer un commentaire