2016-11-26 37 views
0

我有關於如何正確引用外鍵表的一些簡單問題。所以在有兩個表,一個交易表和一個交易源表。現在,這兩張表之間的關係是一對一關係,現在它們也只是交易源中使用的三個值,即「供應商」,「贊助商」和「參與者」。我在交易表中有一個外鍵,當我創建新記錄時,我想引用「交易源表」以獲取其中的一個值。現在我的問題是如何在控制器環境中創建新模型對象時執行此操作,我是否可以簡單地將Transaction Source中的ID與Transaction表中的外鍵相關聯,或者是否有另一種實現我所要求的方法。Laravel使用指向參考表的外鍵創建記錄

回答

0

我相信事務源已自動增量列

在交易表遷移添加

$table->integer('transaction_source_id')->nullable()->index(); 
$table->foreign('transaction_source_id')->references('id')->on('transaction_sources'); 

請遷移使用相關的表名。

它的一個很好的做法是使用的

$table->integer('id', true); 

代替

$table->increments('id'); 

現在,當加入交易只是使用事務源ID。

參考 https://laravel.com/docs/5.2/migrations#foreign-key-constraints

希望它可以幫助

+0

謝謝你的回覆,我有一些類似的,我相信你是正確的約整數,而不是增量,但在控制器如何這將被捆綁在一起,例如,如何將源中的某個源綁定到事務處理中,而不在源表中創建新記錄,有點像枚舉 – JoshuaJohnson2896

+0

請注意,如果您認爲它正確。 :) –