私はSymfony2のモデル(エンティティ)永続性の概念について非常に困惑しています。 AFAIK、symfony2にはmodel_instance-> save()のようなものはありません。その代わりに、それはコントローラでドクトリン・エンティティ・マネージャを検索して呼び出され、その後、model_instanceを持続させてmodel_instanceをフラッシュする必要があります。Symfony2でモデルを適切に持続させるには?
- ブログメッセージ本文から生成される可変タグモデルインスタンスとカテゴリモデルインスタンスを含むブログモデルがある場合。しかし、私はこれらのタグとカテゴリーを保存するためにBlogファクトリをどのように作成できるのかわかりませんが、代わりにこれらの "Tag"インスタンスと "Category"インスタンスを工場から返す必要があります。私はブログを永続させることはできませんし、ブログ内の単一のメソッドのすべてのタグとカテゴリを永続化することはできません。
実際、モデルを永続化するために定期的に呼び出されるスクリプトを作成したい場合、コントローラーを呼び出す必要があるため不可能に思えますが、なぜスクリプトにWebサーバーが必要なのかわかりませんWebサーバーに触れることなくオブジェクトモデルで作業するだけでなく、存在することができます。
上記の問題を解決する方法を本当に感謝します。ありがとうございました!
ウェブサーバーに触れていない場合、どこにデータを保存していますか?あなたは、クライアントが直接インターフェースするための別個のデータベースサーバーを持っていますか? – MrGlass
ありがとうございます。 1)ユニットテストでそれを保存して確認しています(私はいくつかの方法で前後の質問がありますが、理由は問いません) 2)Cronで実行してください。それはWebサービスを経由する必要があると信じる理由。 3)タグ/カテゴリモデルインスタンスを返さずに保存する(Transitive Persistence Cascadeオペレーションで提案された、私はそれを調べています) また、コントローラを作成せずにPHPUnitでデータを保存することはできませんテストのためのアクションは、私のコードが後で失敗する危険性があることを意味します。私は困惑している。 – Log0
ああ、あなたがウェブサーバーに触れたくないというわけではありません。コントローラを使用したくないということです。それはもっと意味がある:) – MrGlass