cakephp ИЛИ условие

Первоначально отправил в вопросы и ответы на cakephp, но я поставлю его здесь в надежде получить некоторые ответы.

У меня есть несколько компаний, которые по умолчанию имеют статус 0, но иногда получают более высокий статус. Теперь я хочу использовать высокий статус, если он существует, но вернуться к 0, если нет. Я пробовал кучу разных подходов, но я всегда получаю либо только те, которые имеют статус 0, либо те, которые имеют статус, который я хочу, никогда не давая мне статус, если он существует, и 0, если нет.

Предоставляет мне только указанный мной статус, не давая мне те, которые имеют статус 0:

'Company' => array (
    'conditions' =>  array (
        'OR' => array(
            'Company.status' => 0,
            'Company.status' => $status,
        )

    )
)

Предоставляет мне только статус 0:

'Company' => array (
    'conditions' =>  array (
        'OR' => array(
            'Company.status' => $status,
            'Company.status' => 0
        )
    )
)

Определение статуса и получение данных в коде:

function getCountry($id = null, $status = null) {
    // Bunch of code for retrieving country with $id and all it's companies etc, all with status 0.
    $status_less_companies = $this->Country->find...

    if ($status) {
        $status_companies = $this->Country->find('first', array(
            'conditions' => array(
                'Country.id' => $id
            ),
            'contain' => array(
                'Product' => array (
                    'Company' => array (
                        'conditions' =>  array (
                            'OR' => array(
                                'Company.status' => $status,
                                'Company.status' => 0
                            )
                        )
                    )
                )
            )
        )
    }

    // Mergin $status_less_companies and $status_companies and returning data to flex application.
}

Я изменил имя для модели для этого вопроса, чтобы было больше смысла, люди обычно пугаются, когда я говорю им, что работаю с cakephp для своего гибкого приложения. Я предполагаю, что логика этого вопроса не имеет смысла, но поверьте мне, это имеет смысл в моем приложении.

Спасибо!

14
задан eldamar 13 December 2011 в 08:38
поделиться