<div dir="ltr"><div class="gmail_default" style="font-family:courier new,monospace;font-size:small;color:rgb(7,55,99)">Не думаю, что вам здесь что-то поможет. Собирать извращенский запрос с помощью каких-то модулей - ну это будет только все усложнять и снижать читаемость. Есть пределы, когда стоит выбрать очевидность вместо попыток присобачить какой-то "элегантный" модуль, который ну не тянет такого функционала на самом деле.<br>
</div></div><div class="gmail_extra"><br clear="all"><div><div dir="ltr"><div><font face="courier new,monospace">Savenkova Natalya<br></font></div><font face="courier new,monospace"><a href="mailto:wwax555@gmail.com" target="_blank">wwax555@gmail.com</a><br>
<a href="https://www.facebook.com/name.rnd" target="_blank">https://www.facebook.com/name.rnd</a><br><br></font></div></div>
<br><br><div class="gmail_quote">2013/12/18 Nick Knutov <span dir="ltr"><<a href="mailto:mail@knutov.com" target="_blank">mail@knutov.com</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
У меня в коде в некоторых функциях, в зависимости от входных параметров,<br>
конструируются разные sql запросы. Пример:<br>
<br>
my $sql = posts_sql_view();<br>
$sql .= ' WHERE ' if $type or $id or $main;<br>
do { $sql .= ' <a href="http://ty.id" target="_blank">ty.id</a>=? '; push @params, $type;} if $type;<br>
do { $sql .= ' AND <a href="http://p.id" target="_blank">p.id</a>=? LIMIT 1'; push @params, $id } if $id;<br>
$sql .= ' ORDER BY id DESC ' unless $id;<br>
do { $sql .= ' LIMIT ? ' ; push @params, $limit } if $limit and not $id;<br>
<br>
Мне не нравится как это визуально выглядит. Как бы вы это переписали,<br>
чтобы было понятнее и читабельнее?<br>
<br>
ps: в некоторых других случаях можно было бы использовать && вместо<br>
do{}, но не тут.<br>
<br>
pps: ORM предлагать и обсуждать не надо. Как минимум потому, что запросы<br>
сложные и сложность/стоимость проверки того, что генерирует ORM<br>
многократно выше любого профита от ORM в данной ситуации.<br>
<span class="HOEnZb"><font color="#888888"><br>
--<br>
Best Regards,<br>
Nick Knutov<br>
<a href="http://knutov.com" target="_blank">http://knutov.com</a><br>
ICQ: 272873706<br>
Voice: +7-904-84-23-130<br>
--<br>
Moscow.pm mailing list<br>
<a href="mailto:moscow-pm@pm.org">moscow-pm@pm.org</a> | <a href="http://moscow.pm.org" target="_blank">http://moscow.pm.org</a><br>
</font></span></blockquote></div><br></div>