条件而不重复

问题描述:

嗨,我是用这个获取数据:条件而不重复

Topic.find(:all, :include => ..., 
:conditions => @core ? ["cores_topics.id = ? AND visible = 1 AND (distance < ? OR cores.id IN (?))",@core.id, @user_location[3].to_i, @user_friends] : 
["visible = 1 AND (distance < ? OR cores.id IN (?))", @user_location[3].to_i, @user_friends], 
... 

我怎么可以重写条件更短?

+0

你可以用这段代码解释你想达到的目标,所以我们可以建议一个更好的方法:] – 2010-05-20 23:25:07

我该如何改写 更短的条件?

用户较小的变量名称。

好的,真的。阅读文档named_scope。你的代码正在为他们哭泣。