首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >先进搜索模型(MVC)

先进搜索模型(MVC)
EN

Stack Overflow用户
提问于 2012-02-18 00:08:44
回答 2查看 1.1K关注 0票数 0

我想创建一个预先搜索,如下所示:

telephone

  • Dropdown:

  • 文本框:查找

  • 下拉列表:按:名称、位置或由Asc或Dec

  • 下拉列表按名称、位置或

  • 顺序进行搜索:按名称、位置或telephone

  • Dropdown:在日期之间搜索(如果选中)

在模型的函数中添加这些参数的正确方法是什么?

我想出了一个解决方案:

代码语言:javascript
复制
class ShopsModel extends Model {

  findBy($find, $searchBy, $order, $sort, $betweenDate) {
   // some MySQL query here...
  }

}

编辑:我指的是变量-- findBy($find, $searchBy, $order, $sort, $betweenDate) --我需要所有这些参数还是有替代的解决方案?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-02-18 00:18:53

你的解决方案似乎没问题。但是您也可以使用装饰器模式,这样您就可以进行以下查询:

代码语言:javascript
复制
$shops = new ShopsModel();
$results = $shops->search('name', 'Tadeck')
    ->order_by('name', 'asc')
    ->between_dates('2012-02-01', '2012-03-14')
    ->fetch_all();
票数 1
EN

Stack Overflow用户

发布于 2012-02-18 15:33:07

我认为,您所描述的内容应该与javascript库(如knockoutjs或backbonejs )一起完成。

Nettuts已经介绍了knockoutjs,这里有一个演示:http://nettuts.s3.amazonaws.com/1034_ko/demo/index.html

如果您正在使用类似于Yii的模式,您可以在谷歌上搜索类似于这个http://aiao.be/2012/01/29/knockout-js-with-the-yii-framework-hello-world-example/的教程。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9337175

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档