Laravel:麻烦属于同一个模型

时间:2014-08-10 18:25:28

标签: laravel eloquent

我有这个模型

当我试图找到作者的信息时,我有

  

“Undefined property:Illuminate \ Database \ Eloquent \ Relations \ BelongsTo :: $ id”   “

class PostSignal extends BaseModel {
    protected $fillable = [];

    public function send($data)
    {
        $data['userid'] = $this->author()->id;
    }

    public function author()
    {
        return $this->belongsTo('User', 'user_id');
    }
}

我的用户模型是经典的:

use Illuminate\Auth\UserTrait;
use Illuminate\Auth\UserInterface;
use Illuminate\Auth\Reminders\RemindableTrait;
use Illuminate\Auth\Reminders\RemindableInterface;

class User extends BaseModel implements UserInterface, RemindableInterface {

    use UserTrait, RemindableTrait;

    /**
     * The database table used by the model.
     *
     * @var string
     */
    protected $table = 'users';

    /**
     * The attributes excluded from the model's JSON form.
     *
     * @var array
     */
    protected $hidden = array('password', 'remember_token');

    protected $fillable = ['username', 'email', 'password', 'last_connection', 'gravatar'];


    /**
     * Generate gravatar image
     * 
     * @param integer $size Size of the image
     * 
     * @return string Image
     */
    public function gravatar($size = 32)
    {
        $email = md5($this->email);

        return "//www.gravatar.com/avatar/{$email}?s={$size}";
    }

    public function Posts()
    {
        return $this->hasMany('BlogPost');
    }

    public function Comments()
    {
        return $this->hasMany('BlogPostComment');
    }

    public function signal()
    {
        return $this->hasmany('PostSignal');
    }
}

0 个答案:

没有答案