Cakephp Find不输出正确的数据

时间:2014-12-18 15:34:18

标签: mysql cakephp find

我尝试在cakephp中使用多个表单输入创建查询。

在此表单中,用户可以使用一些我想用来过滤订阅结果的值。

从表单中我收到4个我想要使用的值。

我的find方法如下:

$subscriptions = $this->set('subscriptions',
    $this->Subscription->find('all', [
        'conditions' => array(
            'and' => array(
                'Subscription.provider' => $provider,
                'Subscription.subscription_duration' => $length,
                'Subscription.subscription_allowance_minutes >=' => $minutes,
                'Subscription.subscription_allowance_sms >=' => $sms,
                'Subscription.package_internet_bundle_mb >=' => $data
            )
        ),
        'order' => 'Abonnement.subscription_price ASC'
    ])
); 

正如您所看到的,我想查询设定值以及更高的值,以便为用户提供更广泛的选择。

$ provider和$ length是数组并包含," Vodafone"," Ben"," Tele2"," T-Mobile&#34 ;这两个值没有问题,但是我想要查询的值等于和大于。

由于我是cakephp的首发,我希望有人来验证我的发现方法是否正确?如果它是正确的我将进一步排除故障并发布其余部分。

1 个答案:

答案 0 :(得分:0)

破解过滤器的问题是我试图用整数查询varchar字段。有一个模型字段重载:$ this-> Model-> _schema但这对我没有用,所以我将字段表中的类型更改为int。