なぜ私はsymfony 1.2にドクトリンで保存「バリデータが失敗しました」1つを得るのですか?

StackOverflow https://stackoverflow.com/questions/926725

  •  06-09-2019
  •  | 
  •  

質問

のは、私はそのように見ているYAMLスキーマを持っているとしましょう。

Note:
  options:
    type: MyISAM
    collate: utf8_unicode_ci
    charset: utf8
  actAs: { Timestampable: ~ }
  columns:
    content: { type: string, notnull: true}
    order_id: int(5)
    user_id : int
  relations:
    User:
      foreignAlias: Notes
      local: user_id
      foreign: id
      type: one
      foreignType: man
      onDelete: CASCADE

実行する場合:

$note->setOrderId(0);
$note->save();

私は、次のエラーを取得しています:

1 validator failed on order_id (type)

のMySQLストアはBIGINT(20)とORDER_ID。

私はUbuntuの9.10は、symfony 1.2、PHP 5とMySQL 5を使用しています。

EDITます:

私はYAMLファイルでのサイズのすべての言及を削除した場合、私はORDER_ID(な長さ)のための第二のバリデータのエラーを取得し、ヒントを得た: - )

役に立ちましたか?

解決

私はそれを得ました。 「整数」で「INT」の交換とサイズを取り払うトリックをしました。今、YAMLファイルは次のようになります:

Note:
  options:
    type: MyISAM
    collate: utf8_unicode_ci
    charset: utf8
  actAs: { Timestampable: ~ }
  columns:
    content: { type: string, notnull: true}
    order_id: integer
    user_id : integer
  relations:
    User:
      foreignAlias: Notes
      local: user_id
      foreign: id
      type: one
      foreignType: man
      onDelete: CASCADE

私は。

ネット上の他の人が同様のエラーがあったので、「文字列」と「VARCHAR」を置き換える解決することを試みました 誰かがそれに立ち往生し、この回答を読んで取得する場合は、

、自分の名前でビールを持っている: - )

他のヒント

私は、これは古いです知っている...

私はちょうど私が、「文字列」、「フロート」、「小数」、「オブジェクト」、「CLOB」、「ブロブ」、「列挙型」、「配列」型は「整数」であること、有効な教義を明確にするかもしれないと思いました。

教義は、次に選択されたバックエンドのための正しいデータベースタイプに教義の種類を変換します。

"intは" 型バリデータを失敗したが、 "整数" は働く理由

厥ます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top