2012-03-20 14 views
0

オーチャードはかなり新しいです。私は簡単なフィードバックフォームウィジェットを作成しました。これはコントローラにデータをデータベースに挿入するためのものですが、動作しません。オーチャード - フィードバックフォームレコードをデータベースに保存

[HttpPost] 
    public ActionResult Feedback(FeedbackViewModel form) 
    { 
     var feedback = _orchardServices.ContentManager.New<FeedbackPart>("FeedbackWidget"); 

     feedback.EmailAddress = form.EmailAddress; 
     feedback.Name = form.Name; 
     feedback.Comment = form.Comment; 
     feedback.SubmitDate = DateTime.Now; 

     _orchardServices.ContentManager.Create(feedback); 

     return View("FeedbackSent", form); 
    } 

私は間違っていますか?エラーは発生しませんが、データベーステーブルに新しいレコードが挿入されることはありません。

ありがとうございました。 FeedbackWidgetを想定し

答えて

0
var feedback = _orchardServices.ContentManager.New<FeedbackPart>("FeedbackWidget"); 

はあなたがフィードバックを収集するために使用されているウィジェットを表しコンテンツタイプで、私はあなたが新しいウィジェットたびに作成することにしたいかはわかりません。

、第2のコンテンツ・タイプを有するように、より理にかなって

からFeedbackResponse部分とはEmailAddressNameCommentなどを保持し、フィードバックの個々のビットを格納するために新しいFeedbackResponseコンテンツアイテムを作成します。

+0

ありがとう。新しいコンテンツタイプを使用しました。 – user471317

+0

私はちょうど気づいた、私は、私が提出したフィードバックごとに1つ、管理ダッシュボードに15 +フィードバックコンテンツアイテムが表示されます。これは望ましいことではありません。サイトが公開されると、リストは非常に大きくなります。私はコンテンツタイプとしてフィードバックページを作成するのが正しい方法ではないと思います。 – user471317

1

ここで最高のアドバイスは、オーチャード1.5メートルの一部となる、これをチェックするために、おそらくですが、すでに1.4上で動作します:http://orchardcustomforms.codeplex.com/

関連する問題