18

Laravel 3/4でこのテーブルの正しいテーブル名は何ですか?

構造
image_projects (id、project_id、image、ext、size、created_at、updated_at、active)

image_projects
imageprojects
imageProjects

そして、どうすればモデルを作成できますか?

app/models/image_projects.php
app/models/imageprojects.php
app/models/imageProjects.php
app/models/image/projects.php
app/models/projects/image.php
4

2 に答える 2

52

ファイルとクラスに単数形の名前を付け、クラス名が大文字で始まる限り、テーブルの名前に違いはありません。

次のオプションのいずれかを使用できます。

テーブル名: image_projects

ファイル名: ImageProject.php

クラス名: ImageProject


テーブル名: imageprojects

ファイル名: Imageproject.php

クラス名: Imageproject


テーブル名: imageProjects

ファイル名: ImageProject.php

クラス名: ImageProject

この場合、$tableプロパティを自分で設定する必要があります。


覚えておいてください:テーブルの名前の単数形でクラスに名前を付けない場合は、モデルに手動で設定する必要があります。

class ImageProjects extends Eloquent
{
    public $table = 'image_projects';
}
于 2013-01-22T00:59:35.647 に答える
1

現在の Laravel バージョン 4.2 のテーブル名の規則は、次のように問題なく機能します。

テーブル名: image_projects

ファイル名: ImageProject.php

クラス名: ImageProject

キャメル ケースのクラス名では、テーブル名にアンダースコアを使用する例外がありました。

于 2014-08-08T14:30:20.030 に答える