2014-04-23 30 views
-1

當我提交表單和軌道控制檯顯示參數傳遞作爲導軌PARAMS [:USER_ID]返回nil甚至它們呈現

Processing by RfpsController#create as HTML 
    Parameters: {"utf8"=>"✓", "authenticity_token"=>"OeKck54onJ6o72ABYvB6jMyBnU5X7BHY6NKH1sUtcHU=", "***rfp"=>{"user_id"=>"64***", "client_id"=>"3", "cms"=>"other2", "othercms"=>"dasda", "otherecommerce"=>"", "numberofpage"=>"", "designcomplexity"=>"", "browser"=>"","commit"=>"Create Rfp", "project_id"=>"18"} 

在控制器當我檢查if params[:user_id].present?它總是顯示零即使user_id是64作爲上述 所示plz幫助我,爲什麼它發生

編輯

Started GET "/projects/18/rfps/157" for 127.0.0.1 at 2014-04-23 10:16:24 +0530 
Processing by RfpsController#show as HTML 
    Parameters: {"project_id"=>"18", "id"=>"157"} 
    Current user: anonymous 
Completed 500 Internal Server Error in 7ms 

NoMethodError (undefined method `[]' for nil:NilClass): 



def show 
@project = Project.find(params[:project_id]) 
@rfp = Rfp.find(params[:id]) 
    # r = Rfp.find(params[:user_id]) 

    # m = Rfp.find(params[:user_id]) 

    if params[:rfp][:user_id].present? 
     @coo = User.where(:id => params[:rfp][:user_id]).first 

    end 
end 

鑑於我是JST印刷名稱

Coordinator<%= @coo.firstname %> 
+0

安置自己的'RfpsController' – Pavan

+0

@Pavan其變形點焊exacly堂妹是大 – Anish

+0

當然是'秀行動。 – Pavan

回答

4

做到這一點,這裏:user_id正在:rfp

if params[:rfp][:user_id].present? 
+0

它顯示'NoMethodError(未定義的方法'[]'nil:NilClass):' – Anish

+1

現在你得到一些其他問題的原因不是這個,發佈你的錯誤日誌 – RSB

+1

你需要發佈你的錯誤日誌,也是你的控制器代碼 – RSB

0

因爲params[:user_id]不存在。

params[:rfp][:user_id]是64,但是。

+0

PLZ請參閱下面的評論的回答 – Anish

0

你有你的user_idrfp,這樣做只是params[:user_id]不足以獲得價值here.so返回

你要做的

params[:rfp][:user_id] #=> 64 

得到的user_id值。

所以現在做if params[:rfp]{:user_id].present? #=> true

將返回true

+0

看到第一個回答'comment – Anish

+0

@Anish Yeah!我也在你的問題中看到並回應了我的評論。 – Pavan

1

試試這個

if params['***rfp'][:user_id].present? 
    @coo = User.where(id: params['***rfp'][:user_id]).first 
end