2016-04-11 25 views
0

我在我的獎學金錶中正在查詢其中一個屬性時遇到問題。我定義了一個私人函數來接受獎學金「表」 •獎學金(獎學金類型) •名稱(個人獎勵的名稱) •價值(獎金) •gpa (gpa需要申請) •截止日期(申請獎勵的最後日期)我的私人蔘數函數中的操作控制器不會接受輸入字段的參數

我有以下規定供應商的控制器,其中提供者的顯示頁面有部分獎學金#新頁面,用戶可以使用表單標籤發佈資金並附有發佈請求:

<%= form_tag(scholarships_path, {:class => "form"}) do %> 

    <%= label_tag("date of events") %> 

    <%= datetime_local_field(:scholarship, :deadline) %> 

    <%= label_tag("The Name Of The Fund") %> 

    <%= text_field_tag(:name) %> 

    <%= label_tag("Type of Fund") %> 

    <%= text_field_tag(:scholarship) %> 

    <%= label_tag("Contributable Amount") %> 

    <%= text_field_tag(:value) %> 

    <%= label_tag("GPA Considerations?") %> 

    <h6><span style"font-style:italics">If No GPA is worth consideration, then submit 0.0 for this fund</span></h6> 

    <%= number_field(:scholarship, :gpa, in: 0.0..4.0, step: 0.01) %> 

    <%= submit_tag(:submission) %> 

<% end %> 

是providers_controller_path

def show 
    @providers_scholarship = Scholarship.new 
    @provider = current_provider 
end 



private 
def provider_params 
    params.require(:provider).permit(:industry, :title, :password, :email) 
end 

而且具有以下信息的頁面中寫了下面如下:

<div class="col-md-9"> 
    <div class="form form-control scholarship-maker" > 
     <%= render "scholarships/new" %> 
    </div> 
</div> 

我得到一個奇怪的反應告訴我的「獎學金」參數爲空時我發佈了一個帖子請求。

我知道這是比較容易調試,但我無法找到解決這個問題的生活對我來說。

+1

是'提供者'模型嗎?或者是「獎學金」模式? – trh

+0

你可以發佈顯示此請求的控制檯日誌嗎? –

+0

提供者是一個模型和獎學金是一個模型 – akiespenc

回答

0

您的provider_params方法需要provider並允許提供者的各種屬性。但是你的表單將發送不嵌套在provider內的屬性。

e.g它期待PARAMS像

{ "provider" => { "industry" => "foo", "title" => "bar", ... } }

更新您的field_tags到包括provider應該解決您的問題。 e.g

<%= text_field_tag(:name) %>

將成爲

<%= text_field_tag("[provider][name]") %>

然而,你很可能會尋找在使用form_forProvider類更好。

+0

是的,其實我不得不求助於使用渲染部分,然後使用form_for動作助手,而不是,謝謝你,這實際上是一個有效的解決方案,我的問題,對不起,我不有一個更好的聲譽給你一個upvote。 – akiespenc

相關問題