You need to pay more attention to the documentation
"AND `User.name, User.email,
Profile.name, Profile.phone` LIKE"
is invalid SQL which you get when you do it wrong.
The correct approach as outlined in the readme is to use the array syntax:
'field' => array('User.name', 'User.email', 'Profile.name',
'Profile.phone')
Note that you got 4 array elements here instead of one long one as in your
case.
Am Donnerstag, 28. März 2013 20:33:20 UTC+1 schrieb Sergio Eustaquio Pereda
Saviñón:
>
> > > with my bugfixed and enhanced version you
> can:https://github.com/dereuromark/search
> >
> > > but you should use an array structure then - like that:
> >
> > > 'field'=>array('Model1.entry1', 'Model1.entry2',
> > > 'Model2.entry2', ...)
> >
>
> I'm using Cakephp V 2.3.1, and the plugin from Dereuromark branch fixed.
>
> Im getting this error:
> Error: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'User.name,
> User.email, Profile.name, Profile.phone' in 'where clause'
>
> Database error:
> SQL Query: SELECT `User`.`id`, `User`.`name`, `User`.`email`,
> `User`.`password`, `User`.`login_id`, `User`.`profile_id`,
> `User`.`activate`, `User`.`is_sadmin`, `User`.`ubuildinghive`,
> `User`.`ustaff`,
> ...
> `Profile`.`name`, `Profile`.`email2`, `Profile`.`app`, `Profile`.`apm`,
> `Profile`.`phone`,
> ....
> `Pbpermission`.`advertising`, `Pbpermission`.`techsupport`,
> `Pbpermission`.`company`,
> ....
> FROM `buildhive`.`users` AS `User` LEFT JOIN `buildhive`.`profiles` AS
> `Profile` ON (`User`.`profile_id` = `Profile`.`id`) LEFT JOIN
> `buildhive`.`pbpermissions` AS `Pbpermission` ON (`User`.`pbpermission_id`
> =
> `Pbpermission`.`id`) **WHERE `ubuildinghive` = 1 AND `User.name,
> User.email,
> Profile.name, Profile.phone` LIKE '%adf%' LIMIT 20
>
> User Model:
> public $actsAs = array('Search.Searchable', 'Containable');
>
> public $filterArgs = array(
> 'pbpermission_id' => array('type' => 'like'),
> 'search_email' => array('type' => 'like', 'field'
> => 'User.email'),
> 'pname' => array('type' => 'like', 'field' =>
> 'Profile.name'),
> 'phone' => array('type' => 'like', 'field' =>
> 'Profile.phone'),
> 'advanced' => array('type' => 'like', 'encode' =>
> true, 'field' =>
> array('User.name, User.email, Profile.name, Profile.phone') )
> );
>
>
> User Controller:
> CakePlugin::load( array('Search') );
> public $components = array('Search.Prg');
> public $presetVars = true;
>
> public function index:
> $this->Prg->commonProcess();
> $this->paginate = array('User' => array('contain' => array('Profile',
> 'Pbpermission') ) );
>
> $conditions = array('ubuildinghive' => 1 );
> $options = array_merge($conditions,
> $this->User->parseCriteria($this->passedArgs) );
> $users = $this->paginate('User', $options );
>
>
> Please help !!!!,
>
>
>
> --
> View this message in context:
> http://cakephp.1045679.n5.nabble.com/CakeDC-Search-Plugin-How-to-search-2-fields-in-DB-using-only-1-form-field-tp5164502p5714305.html
>
> Sent from the CakePHP mailing list archive at Nabble.com.
>
--
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP
---
You received this message because you are subscribed to the Google Groups
"CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/cake-php?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.