0

该方案是一个报告应用程序。迄今为止,我使用过的 MVC 应用程序通常具有响应一个特定问题(即get_username_from_id($id))的模型方法。我想要做的是有一个查询可以根据选中的复选框以多种不同的方式响应。

所以 - 例如,我的查询中可能只有一件事,或者它可能有 100 件事。我这样做的方式,它很快就变得一团糟。例如,我最终会做这样的事情:

if(in_array("id", $grain)){
    $sql .= "table.id id, ";
}

这种事情有最佳实践吗?或者甚至是一种处理组的方法,所以没有更多额外的代码?我知道这是一种开放式的,我什至可能没有正确地表达我的问题。非常感谢那些可以插话并帮助我提出正确问题的人。

4

1 回答 1

0

我使用这样的东西:

function apply_filters ($filters)
{
        if(isset($filters['user_id']) AND !empty($filters['user_id']))
        {
                $this->db->where('user_id', $filters['user_id']);
        }
}
function get ($filters)
{
        $this->apply_filters($filters);
        return $this->db->get('favourites')->result();
}
function update ($filters, $data)
{
        $this->apply_filters($filters);
        $this->db->update('favourites', $data);
}

您应该能够根据需要扩展 apply_filters 函数。这个问题省略了很多关于你想要做什么的细节以及真实数据和代码的样本,所以这是我迄今为止可以建议的。

于 2012-11-02T14:57:43.010 回答