跳轉到內容

Ruby on Rails/ActionController/Parameters

來自華夏公益教科書,自由的教科書

還記得學習檢視時看到的"渲染和重定向"示例嗎?

def update
    @product= Product.find(params[:id])

    if @product.update_attributes(params[:name])
      redirect_to :action => 'index'
    else
      render :edit
    end
end

你知道renderredirect_to 之間的區別. 現在我們想看看更新的內容是什麼。這取決於給定"update_attributes"方法我們想要更新什麼params[:name]. 在此示例中,資料可能來自 HTML 表單(因此是 POST 請求)。你也可以以相同的方式使用 GET 請求。Rails 將透過使用 params 命令來處理這兩個請求。

當使用例如複選框時,你可能會為同一個屬性獲得多個數據集。例如option[]=1&option[]=2&option[]=3. 與上面的示例一樣,你可以使用params[:ids]訪問這些設定。你的選項將如下所示options => {'1','2','3'}

華夏公益教科書