0

データベースを作成しようとしています。テーブルの 1 つは、次のクエリで作成されたメッセージング テーブルです。

CREATE TABLE `rally`.`privatemessages` (
`id` INT NOT NULL AUTO_INCREMENT,
`user_id_from` INT NULL,
`user_id_to` INT NULL,
`content` TEXT NULL,
`timestamp` INT NULL,
PRIMARY KEY (`id`));

しかし、プロジェクト全体をベイクしようとすると、ベイク シェルから、 table が見つからないというメッセージが表示されますuser_froms。ベイクが機能するようにテーブル フィールドを設定するにはどうすればよいですか?

4

1 に答える 1

0

2 つの手順があります。最初の手順は絶対に必要というわけではありませんが、途中で役立ちます。

  1. DB を Cake のモデル規則に従うように変更します。したがって、テーブル名は bで、外部キーのprivate_messagesフィールドは.from_user_idto_user_id

  2. Bake は、最も一般的な使用状況のほぼすべてを自動化しますが、すべてではありません。これは、開発者として飛び込んで理解を助ける必要があるときです。上記の変更を行った後、「PrivateMessage BelongsTo FromUsers?」というメッセージが表示された場合 (モデルがないため)いいえと言って、フィールド名が外部キーでFromUsersある BelongsTo を手動で作成します)。Usersfrom_user_id

最後に、それぞれのモデル ファイルを作成/編集することで、いつでもベイクをスキップして (関連付け)[ http://book.cakephp.org/2.0/en/models/associations-linking-models-together.html]を自分で作成できます。

于 2014-06-29T14:04:38.200 に答える