Подскажите пожалуйста, как можно переписать вот эту строчку ? $search{'stcode.name'} = {('like' => "\%$params->{search_name}\%")} if (%$params->{search_name});
так что бы функционал сохранился?
а то летит ошибка на эту строку: Using a hash as a reference is deprecated at bla-bla..
я пробую в один хэш поместить примерно такую конструкцию:
my @data = $rs->search(
{ 'me.id' => '10',
'me.name' => { 'Like' => 'test'}
},{
page => 1
});
что бы выглядело так:
my @data = $rs->search(
{ %search },{
page => 1
});
И оно работает! Только ругается мол Using a hash as a reference is deprecated
Кусок кода взят из MyApp::Controller::AppTest - поиск и вывод из DBIx модели.
Можно конечно напрямую подставить 'me.id' = $cgi_param->{id}, но если он undef - то
в SQL запросе все равно будет WHERE с этим пустым me.id.
Полается если на страничке может быть 20 запросов/параметров, из которых только 1 указан, то все равно SQL запрос будет содержать 20 WHERE me.request = '', поэтому хочется в поиск давать только определенные ранее параметры.