モデル(MVC)での事前検索
-
27-10-2019 - |
質問
事前検索を作成したい、次のようなもの:
- テキストボックス:検索
- ドロップダウン:検索:名前、場所、または電話
- ドロップダウン:ASCまたはDECによる注文
- ドロップダウン:名前、場所、または電話で並べ替えます
- ドロップダウン:日付間の検索(選択した場合)
モデルの関数にこれらのパラメーターを追加する適切な方法は何ですか?
私はこの解決策を思いつきました:
class ShopsModel extends Model {
findBy($find, $searchBy, $order, $sort, $betweenDate) {
// some MySQL query here...
}
}
編集: :私は変数について話している - findBy($find, $searchBy, $order, $sort, $betweenDate)
- これらすべてのパラメーターが必要ですか、それとも代替ソリューションがありますか?
解決
あなたの解決策は大丈夫のようです。ただし、デコレーターパターンを使用することもできるため、次のクエリを作成できます。
$shops = new ShopsModel();
$results = $shops->search('name', 'Tadeck')
->order_by('name', 'asc')
->between_dates('2012-02-01', '2012-03-14')
->fetch_all();
他のヒント
あなたが説明していることは、KnockoutjsやBackbonejsのようなJavaScriptライブラリと組み合わせて行われるべきだと思います。
Nettutsはknockoutjsをカバーしており、デモはこちらから入手できます。 http://nettuts.s3.amazonaws.com/1034_ko/demo/index.html
YIIのようなパターンを使用している場合は、このようなチュートリアルをグーグルで検索できます http://aiao.be/2012/01/29/knockout-js-with-theyi--framework-hello-world-example/
所属していません StackOverflow