Ruby on Rails - 对数据库数据进行排序,然后根据排序顺序编辑每行数据

时间:2011-03-19 13:40:27

标签: ruby-on-rails ruby database edit

这就是我想要做的事情:

  1. 选择数据库表'申请人'中的所有行,然后按降序排列“点数”列。

  2. 逐个,从上到下,编辑每行的“reservedIn”列。

  3. 我正在使用MySQLServer 5.5,使用HeidiSQL。我也使用Ruby 1.9.2,Rubygems 1.4.2,我无法识别Ruby on Rails版本。我今年1月早些时候安装了它。

    谢谢!

    更新

    再次问好!我一直在研究从下面的评论中学到的东西,我想出了这个(练习功能,而不是最终的)!它应该选择所有申请人,按照指定的顺序排序,然后将他们所有的mNames更改为“X”。它不起作用!怎么了?谁能说出来?

    def generateReservations
    if !session[:user_id]
        redirect_to :controller =>'user', :action=> 'login'
    else
        @applicants = Applicant.find(:all, :order => "points DESC, sName, fName, mName ")
        #respond_to do |applicant|
        @applicants.each do
        mName = 'X'
        end
    end
    end
    

1 个答案:

答案 0 :(得分:3)

  1. Applicants.order("points DESC")
  2. 我无法添加link_to("Edit", edit_applicant_path(applicant))
  3. 我的观点,例如

    <% Applicants.order("points DESC").each do |applicant| %>
       <%= applicant.title %> <%= link_to("Edit applicant", edit_applicant_path(applicant)) %>
    <% end %>
    

    像这样的东西