1

私はまだ、開発者およびユーザーとして Expression Engine に比較的慣れていません。私は、多くの知識が、チャネル システムを使用して開発者 (製品ライブラリなど) が伝統的に行ってきたタスクを達成する方法を見つけたユーザーによって私に渡されているという問題に直面しています。

私が疑問に思ったのは、クライアントにこれを使用するようにアドバイスするのが最善の場合とそうでない場合について、人々の意見がどうなっているのかということでした.

例を挙げましょう。あるクライアントは、イベントを開催できる会場を備えたシステムを望んでいます。以前の開発者は、会場にはメンバーシップ システムを使用し、イベントにはチャンネル システムを使用することを選択し、カスタム コードを記述して 2 つを結び付けようとしました。会場が作成または更新されたときの住所の経度/緯度。

私は主に他の誰かの仕事の後に拾っていますが、それは彼らのせいではありません.彼らもシステムに不慣れだったので、彼らが与えられた情報でした.

他のプロジェクトでは、これはマスター/詳細タイプのセットアップであり、イベントは会場に属します。私はおそらく 2 つのカスタム テーブルを作成し、モジュールを介して管理エリアにエディターを配置し、ページで通常のカスタム コードを使用して、 info - このようにして、ユーザーが送信を押したときに何が起こっているかを制御できました。

しかし、発起人はExpression Engineのベテランユーザーで、前任の開発者に「ああ、チャンネルに全部入れて、このタグとあのタグと…」と指示していました。

それで、私は要点を逃していますか、それともこれがチャンネルシステムに適合しないというのは正しいですか?いつチャンネルを使用する必要があり、いつ使用しないのですか?

友よありがとう。

4

2 に答える 2

0

この質問は非常に架空のものであり、要件とそのEE開発者がどのようにロールするかによってすべてが異なるため、すべての開発者が異なる回答を提供します。

基本的に、ExpressionEngineを使用すると、さまざまな方法でビルドにアプローチできます。簡単なものもあれば、難しいものもありますが、正しいものも間違っているものもありません。

基本的に、チャネルはデータの「エントリ」のグループです。これらは何でもかまいません。あなたの例を使用すると、会場は、主題に関連して作成されたフィールド(場所、サイズ、価格など)を持つ1つのチャネルである可能性があります。また、さまざまなフィールド(日付、タイプ、場所など)を持つイベント用の別のチャネル。

ほとんどすべてのものをチャネルに挿入できます。ただし、メンバーの詳細は、ネイティブメンバー機能内に保持するのが最適です(ただし、チャネル内のメンバーデータを保持する商用アドオンがあります)。

以前の開発者のアプローチを参照します。これは、データをチャネルごとに個別に保持する必要があるサードパーティのアドオンを使用していたか、最善のアプローチについての理解が不足していることが原因である可能性があります。または、開発者がそのようにアプローチすることを決定したという理由だけで!最後の開発者がメンバー(会場)をエントリー(イベント)に関連付けて、イベントを会場にリンクしたのではないかと思います。基本的なEE機能では、1つのエントリを別のエントリに関連付けることができる関連エントリ(イベント->会場など)、または優れたPlayaアドオンを使用できるため、このアプローチは実際には必要ありません。

個人的には、常にデータをチャネルに保存し、人/メンバーをネイティブメンバーシップ機能(管理者、サイトへの訪問者、顧客など)に保存します。EEが保存できる範囲をはるかに超えている場合にのみ、アドオンを作成して(独自のテーブル/データを利用して)追加情報を保存します。

于 2012-06-28T12:09:06.090 に答える
0

あなたの実際的な質問に答えるには (スタック オーバーフローの質問が正直に想定されているものの範囲を広げています): 会場にはチャネルを、イベントにはチャネルを使用する必要があります。イベント エントリの会場フィールドは、にリンクされた「関連エントリ」フィールド タイプです会場チャンネル。これは「標準的な」EE の方法であり、従来のデータベース スキーマに最も似ています。

于 2012-06-28T13:35:34.600 に答える