5

プロジェクトのコメント可能なモデルをいくつか作成したいのですが、コメント移行スクリプトを作成するための参照が見つかりません。vimeo で次のビデオのみを見つけました: Laravel 4 - Eloquent Collections & Polymorphic Relations

多態的な列を明示的に追加する必要がありますか?

Schema::create('comments',function($table){
    $table->increments('id');
    $table->text('body');
    $table->string('commentable_type');
    $table->integer('commentable_id');
    $table->timestamps();
});

キーが次のように外部キーである場合、ビルダーがプログラマーに期待するように、疑問が生じます。$table->foreign('user_id')->references('id')->on('users');

4

2 に答える 2

6

Laravel ~4.1 には、これを達成する方法があります。

$table->morphs('itemable');

作成するもの:

itemable_id
itemable_type
table_name_itemable_id_itemable_type_index

2 番目のオプション パラメータは、インデックスが長すぎる場合の代替インデックス名です。署名は次のとおりです。

public function morphs($name, $indexName = null);
于 2014-10-28T19:45:29.547 に答える
0

ポリモーフィック接続はスキーマとは関係ありません。他のタイプのモデル間で関係を構築できる Eloquent の機能です。

これについては、ドキュメントを確認できます。

http://four.laravel.com/docs/eloquent#relationships

于 2013-01-24T21:02:05.957 に答える