Laravel 5.0尝试查询错误的数据透视模型

时间:2019-05-13 08:14:00

标签: php laravel eloquent

我在Newsletter和Blocks之间有很多联系。对于此关系,有一个名为“ block_newsletter”的数据透视表。我为此关系创建了一个数据透视模型,因为我需要使用我的BlockItemContent表/模型在此数据透视表/模型上放置另一个OneToMany关系。

我的BlockNewsletterPivot模型如下所示:

class BlockNewsletterPivot extends Pivot
{
    /**
     * The Block Item Content.
     *
     * @return \Illuminate\Database\Eloquent\Relations\HasMany
     */
    public function blockItemContent()
    {
        return $this->hasMany('App\BlockItemContent');
    }
}

这是我的BlockItemContent模型:

class BlockItemContent extends Model
{
    protected $table = 'block_item_content';

    protected $fillable = ['item_type', 'html_key', 'content', 'properties'];

    public $timestamps = false;

    /**
     * Get the BlockNewsletter item that owns the BlockItemContent.
     */
    public function blockNewsletterPivot()
    {
        return $this->belongsTo('App\BlockNewsletterPivot');
    }
}

现在,我尝试像这样获取它:

$blockNewsletterRow = BlockNewsletterPivot::findOrFail($blockNewsletterPivotId);

这会导致以下错误:

  

传递给Illuminate \ Database \ Eloquent \ Relations \ Pivot :: __ construct()的参数1必须是Illuminate \ Database \ Eloquent \ Model的实例,没有给出

这是我的表格和关系的屏幕截图,以便更好地理解。

enter image description here

0 个答案:

没有答案