【问题标题】:Rails, updating multiple nested attributes RESTfullyRails,RESTfully 更新多个嵌套属性
【发布时间】:2011-03-20 14:05:52
【问题描述】:

我有一个关于更新属性的问题。

我有一个用户模型和一个债务模型。如何以一种平静的方式更新属于特定用户 (users/:user_id/debts) 的所有债务,以便通过网站上的链接将它们标记为已付款(布尔属性)?

【问题讨论】:

    标签: ruby-on-rails rest nested-attributes


    【解决方案1】:

    您不能将此操作放入 7 个 REST 操作中,您必须在债务模型上创建一个新的收集方法。

    #in routes.rb
    
    resources :users do
      resources :debts do
        post 'bulk_update', :on => :collection
      end
    end
    

    在你的 debts_controller.rb 中

    def bulk_update
      @user = User.find(params[:user_id])
      @debts = @user.debts
      #etc...
    end
    

    在你看来

    link_to "Update user's debts", bulk_update_user_debts_path(@user), :method=>:post
    

    类似这样,您也可以添加可选参数以适应您的任务。

    【讨论】:

    • 你为什么用method=>:post而不是method=>:put?
    猜你喜欢
    • 2023-03-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-28
    • 1970-01-01
    相关资源
    最近更新 更多