Laravel:如何在相关模型中添加复合键(2列或更多列)作为$ primaryKey?

Amr*_*Amr 11 php composite-primary-key laravel

Laravel框架中任何模型中主键列的名称是 id

protected $primaryKey = 'id';
Run Code Online (Sandbox Code Playgroud)

而且我知道我可以像这样更改默认名称:

protected $primaryKey = 'new_name';
Run Code Online (Sandbox Code Playgroud)

我的问题是:如果我在表中有一个复合键(2列或更多列),如何将它们添加为$primaryKey?我真的必须定义它们吗?

Mic*_*ton 7

来自Laravel文档:

$table->primary(array('first', 'last'));
Run Code Online (Sandbox Code Playgroud)

编辑:我误解了这个问题.这个主题可能会提供一些答案:http://forumsarchive.laravel.io/viewtopic.php?pid = 34475

特别是覆盖了该find()方法.

public static function find($primaryOne, $PrimaryTwo) {
    return Widget::where('primaryOne', '=', $primaryOne)
        ->where('PrimaryTwo', '=', $PrimaryTwo)
        ->first();
} 
Run Code Online (Sandbox Code Playgroud)