オーチャードでリストをリンクするにはどうすればよいですか?オーチャードCMSのリストのリンク
たとえば、私は1つの企業リストと1つのプロジェクトリストを持っています。私はプロジェクトを作成するときに、会社と結びつけたいと思っています。理想的には、私が作成した会社があらかじめ設定されたドロップダウンボックスです。
どうすればいいですか?
P.S.私はオーチャード1.3を使用しています
多くのありがとう!
オーチャードでリストをリンクするにはどうすればよいですか?オーチャードCMSのリストのリンク
たとえば、私は1つの企業リストと1つのプロジェクトリストを持っています。私はプロジェクトを作成するときに、会社と結びつけたいと思っています。理想的には、私が作成した会社があらかじめ設定されたドロップダウンボックスです。
どうすればいいですか?
P.S.私はオーチャード1.3を使用しています
多くのありがとう!
Orchardのドキュメント1-N/N-Nの例を参照して、エディタビューでチェックボックスまたはドロップリストを事前入力する例を参照してください。
ドロップリストを使用して2つの異なる部分間の関係を設定する例を見るには、CodeplexまたはOrchardギャラリーのFeaturedItemSliderまたはContentSlider(元のもの)Orchardモジュールを見てください。
projectPart.CompanyPart = _companiesRepo.Get(companyId)
この関係をフロントエンドでどのように使用するかはわかりません。それについては2つの方法があります。 (1)Routeと一致するカスタムコントローラを作成できます。コントローラには、設定した関係に基づいてパーツを検索するコードがあります。または、(2)ProjectPartDriver.Display()メソッドで、 IContentManagerを使用したルックアップ。
ああ、私はカスタムモジュールを作成していません。 CMSにリストを作成するだけです。ビューから手動でリストを照会する最良の方法は何ですか?独自のSQLクエリを記述しますか?エレガントな方法はありますか?私はMVCで新しいです:|ありがとう! – NomadTraveler
多くの方法があります。 linq、HQL、または純粋なSQLを使用できます。あなたがハックな解決策を実行している場合、Display()メソッドの中でクエリを配置する最も良い場所はDriverクラスであるかもしれません。いくつかのモジュールがありますが、私はrandompeteと考えています。これは、コードを書くことなくコンテンツ部分をリンクすることができるかもしれません。私はそれらを使用していないので、私は入力を与えることはできません。私はそれがScienceProject、またはMechanicsと呼ばれていると思います。 –