とあるセクシーなデータ分析官

を目指す渋谷で働くソーシャルゲーム分析者の卵

symfony日記13

「propel-load-dataでテストデータの挿入」

symfonyでは、SQL文でINSERTしなくてもテストデータをymlに記載すれば
自動でデータを入れてくれるというプラグインがあります。
今回はそれを使用してみました。

まずはこのサイトを元にymlファイルを作成してみる
http://d.hatena.ne.jp/sido_dtv/20080511/1210488465


1.
data/fixtures/import_data.yml
ymlファイルの名前は何でもいいが、基本は(teble名)+import_data.ymlらしい
だが、ここで特定のymlには特定のテーブルのデータしか書かないと思ってしまうと後で大失敗します。


2.データの作成

Hoge:
  1:
    user_id: 1
    created_at: 2008-12-22 09:27:09
    title: おうじさまだよ
    comment: こんなかんじ


これでファイルができたので「symfony propel-load-data front(アプリ名)」を実行
すると…

[PropelException]                                
  Cannot fetch TableMap for undefined table: user

ユーザーテーブルが定義されてませんと。



なんのこっちゃと思い、DBにuserテーブルがあること、schema.ymlにuserテーブルがある事を確認しました。
ちゃんと存在しているのに、なぜエラーが?
これで5時間ほど調べたりして悩みました。




つづく。