アクティブなレコードで ASP MVC を使用する。
関連するレコードと関連しないレコードを含む 2 つのテーブルがあります。関係はユーザーによって定義されます。1 つのテーブルにはプロジェクトがあり、もう 1 つのテーブルにはデバイスがあります。プロジェクトは作成および削除できますが、デバイスはできません。ユーザーがプロジェクトを削除すると、そのプロジェクトとデバイスの間のすべての関係が削除されますが、デバイスは残る必要があります。
どうすればいいですか?
私の削除アクションは現在次のようになっています:
public ActionResult Delete(int id, FormCollection collection)
{
if (!Project.Exists(id)) return RedirectToAction("Index/1", "Error");
try
{
Project project = Project.Find(id);
if (project.User.Id != SessionVariables.AuthenticatedUser.Id) return RedirectToAction("Index/1", "Error");
project.DeleteAndFlush();
return RedirectToAction("Index", "Project");
}
catch(Exception e)
{
return RedirectToAction("Index", "Error");
}
}