http://www.yesodweb.com/blog/2010/07/database-migrationsによると、DeleteCascade
は数年前にタイプクラスが追加されました。私はこれがモデルに追加されることを前提としています。私のモデルをこのように設定した後:Yesod削除カスケード
Field
...
foreignId ForeignId DeleteCascade
私のアプリケーションはうまくコンパイルされます。 DBスキーマは変更されず、削除はアプリケーションによってカスケードされません。私はちょうど(shudder)それを手動で行うべきですか?より良い方法がありますか?
私はイェソド足場(Application.hs、Foundation.hs、Settings.hs、...)
これまでの回答に感謝します。少し拡大できますか?私の問題:http://hackage.haskell.org/packages/archive/persistent-template/1.0.0/doc/html/Database-Persist-TH.htmlによれば、通常のユーザはmkDeleteCascadeを使う必要はありません。 http://hackage.haskell.org/packages/archive/persistent/1.0.0/doc/html/src/Database-Persist-Query-Internal.htmlによると、deleteCascadeWhereは内部使用のみです。私もdeleteCascadeで有用なドキュメントを見つけることができません。あなたはこれの最小の実例を見せて/私に指摘できますか? – abesto
内部使用または一般ユーザーに関するコメントは、機能自体にではなくモジュールに適用されました。リンク先のモジュールは、他のモジュール(egod.Persistなど)によって再エクスポートされます。これらの関数の使用には問題ありません。残念ながら私は完全な例はありません。 –