시나리오는보고 응용 프로그램입니다. 현재까지 작업 해 온 MVC 응용 프로그램에는 일반적으로 하나의 특정 질문 (예 : get_username_from_id($id)
)에 응답하는 모델 방법이 있습니다. 내가하고 싶은 것은 선택된 체크 박스에 따라 다양한 방법으로 응답 할 수있는 하나의 쿼리입니다.Codeigniter에서 큰 동적 쿼리를 만드는 가장 좋은 방법은 무엇입니까?
예를 들어, 선택 항목에 하나만있는 쿼리가 있거나 선택 항목에 100 개의 항목이있을 수 있습니다. 내가 해낸 방식대로, 그것은 지저분 해졌습니다. 예를 들어 다음과 같은 작업을 수행합니다.
if(in_array("id", $grain)){
$sql .= "table.id id, ";
}
이런 종류의 작업에는 모범 사례가 있습니까? 또는 그룹을 처리하는 방법조차도 추가 코드가 필요하지는 않습니까? 나는 이것이 일종의 열린 끝임을 알고 있으며, 아마도 제 질문을 정확하게 표현하지는 않을 것입니다. 전화를 걸고 올바른 질문을 할 수있는 사람들에게도 감사드립니다.
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 기능을 확장 할 수 있어야한다 :