我尝试在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的首发,我希望有人来验证我的发现方法是否正确?如果它是正确的我将进一步排除故障并发布其余部分。
答案 0 :(得分:0)
破解过滤器的问题是我试图用整数查询varchar字段。有一个模型字段重载:$ this-> Model-> _schema但这对我没有用,所以我将字段表中的类型更改为int。