1
Ruby上的新手這裏,我已經成功地構建了一個HTML表單,其中用戶的「項目」模型可以「跟隨」(或者我已經說過「pfollow」)其他「工廠「 楷模。唯一的問題是,當用戶試圖在一個表單上「追蹤」多個工廠時,我創建的代碼無法工作,這迫使用戶多次點擊「提交」以獲取更多工廠。如果用戶一次從選擇框中選擇多個工廠,那麼我的「項目」模型和我的「預關係」控制器就會扼殺輸入,該輸入將以數組形式出現,而不是預期的單個整數(又名「pfollower_id」來自「prelationships」控制器用於其創建操作的工廠)。Rails在一種形式中構建多個關係
如何讓我的應用程序接受「pfollower_id(s)」數組,然後創建多個工廠預安排?
以下是錯誤:
undefined method `id' for #<Array:0x26abe70>
app/models/project.rb:35:in `pfollow!'
app/controllers/prelationships_controller.rb:6:in `create'
Request
Parameters:
{"utf8"=>"âœ「",
"authenticity_token"=>"NKqa1f0M2yPLQDHbRLnxl3SiwBeTus/1q1hpZjD7hgY=",
"prelationship"=>{"pfollower_id"=>["4",
"5"]},
"project_id"=>"90",
"commit"=>"Pfollow"}
我 「prelationships」 控制器:
class PrelationshipsController < ApplicationController
def create
@project = Project.find(params[:project_id])
@plant = Plant.find(params[:prelationship][:pfollower_id])
@project.pfollow!(@plant)
respond_to do |format|
format.html { redirect_to @project }
format.js
end
end
end
與嫌疑人 「pfollow!」在我的模型的跟蹤表明方法也是有罪的:
def pfollow!(pfollowed)
prelationships.create!(:pfollowed_id => pfollowed.id)
end
形態正常工作,所以它只是這個控制器和控制方法無法處理pfollower_ids的數組。
我非常渴望幫忙!任何方向都將非常有幫助。
即使只有一個參數,它也可以工作。 Friggin'驚人的。非常感謝,Trip! –