Har*_*and 2 mysql activerecord find ruby-on-rails-3
我目前正在使用以下内容来检索城镇名称:
place = Town.find(:first, :conditions => ["name = ?", params[:place_post]])
place ||= Town.find(:first, :order => "damlev(`towns`.`name`, '" + params[:place_post] + "')")
Run Code Online (Sandbox Code Playgroud)
什么是最好的方法,命名范围等我只是觉得这是很好的垃圾和糟糕的做法.
谢谢!
如果params [:place_post]是城镇的名称:
place = Town.find(:first, :conditions => ["name = ?", params[:place_post]], :order => "name [ASC|DESC]")
使用ASC或DESC.
使用ARel语法更新:
place = Town.where(:name => params[:place_post]).order("name [ASC|DESC]").first()
要么:
place = Town.order("name [ASC|DESC]").find_by_name(params[:place_post])
不知道具有demlev功能的确切含义,但这可能有效:
place = Town.order("demlev(name, #{quoted_place_post]}) [ASC|DESC]").find_by_name(params[:place_post])
quoted_place_post可以是Town.quote_value(params [:place_post])
| 归档时间: |
|
| 查看次数: |
6537 次 |
| 最近记录: |