0

L4(スケルトンとパッケージの両方)を最新バージョンに更新しました。

ここで、モデルの1つの新しいインスタンスを作成して、それをDBに保存しようとすると、タイムスタンプと主キーを除いて、空のレコードが取得されます。

この動作はすべてのモデル(ユーザー、入札単価、プロジェクトなど)で持続するため、ローカルの問題ではありません。

私は両方を試しました

Project::create($project);

そして、このスレッドに続いて

$new_project = new Project;

$new_project->fill($project);

$new_project->save();

しかし、結果は同じです。空のレコードです。

4

2 に答える 2

5

そのため、ドキュメントからわかるように、セキュリティ上の理由から、一括割り当てはデフォルトでブロックされています(たとえば、フィールド(Input::all())を指定せずにフォームからすべてのデータをフェッチし、そのままDBに保存すると、不要なフィールドが割り当てられる可能性があります。クライアントがDB内のフィールドに対応する名前のフィールドを追加することにより、フォームを操作する場合)。

割り当てが許可されているフィールドを指定するには、問題のフィールドをホワイトリスト$fillableとしてモデル上の保護された配列に明示的に追加するか、配列を使用してブラックリストを作成する必要があります。$guarded

于 2013-03-29T11:15:21.950 に答える
0

私は同じ問題に直面していて、解決策が他の人を助けることを望んでいることがわかりました

$new_project = new Project;

$new_project->unguard();

$new_project->create($project);

$new_project->reguard();


or

Project::unguard();
$new_project = Project::create($project);
$new_project->reguard();
于 2013-11-18T10:31:51.553 に答える