Orchard.Comments モジュールのレイアウトをカスタマイズして、Orchard テーマにコメント フォームを追加しようとしています。
通常、シェイプ トレーシングを使用して新しいテンプレートを作成すると、デフォルトのビュー cshtml が取り込まれ、すべてが機能します。これは、コメントの EditorTemplate では機能せず、EditorTemplate のオーバーライドで問題になる可能性があります。
これは私がこの場合にしたことです:
- シェイプ トレースを使用して、Content/Parts_CommentForm を見つけました。
- Content_Edit を展開し、EditorTemplate をクリックします。
- ~/Themes/MyTheme/Views/EditorTemplate-Comment.cshtml の [作成] をクリックします。
その結果、作成されたファイルはデフォルトのビューではなく空白になります。テンプレート ファイルは使用されますが、空白になっているため、コメントの追加フォームは表示されません。
Orchard.Comments モジュール Orchard.Comments/Views/EditorTemplates/Parts.Comments.cshtml のエディター テンプレートを使用しようとすると、「ディクショナリに渡されたモデル項目の型は 'Orchard.DisplayManagement.Shapes.Shape です' ですが、このディクショナリには 'Orchard.Comments.Models.CommentPart' 型のモデル アイテムが必要です。"
エラーの原因は、Display が /Core/Contents/Views/Content.Edit.cshtml を介して呼び出されたときです。
> 3 行目: @if (Model.Content != null) { > 4 行目: > 5 行目: @Display(Model.Content) > 6 行目: > 7 行目: }
テーマ内のエディター テンプレートをオーバーライドして、モデル タイプをモジュール内のものと一致させることは可能ですか?
そうでない場合、指定された Orchard Shape に基づいて編集フォームを生成する最良の方法は何ですか?
ありがとう!