小编Mat*_*rez的帖子

Rails 4单选按钮形成帮助,真的没有验证

我有简单的是或否附加的单选按钮:needs_dist.当我提交没有选择的表单时它工作得很好,但是当我选择了Yes时,它会抛出一个错误进行验证?它仅在以下时间验证:needs_dist => true.

模型

validates_presence_of :contact_name, :email, :postal_code, :series_id, :product_id, :company_name, :needs_dist
Run Code Online (Sandbox Code Playgroud)

视图

<%= f.radio_button(:needs_dist, "false") %>
<%= f.label :needs_dist, "Yes" %>
<%= f.radio_button(:needs_dist, "true") %>
<%= f.label :needs_dist, "No" %>
Run Code Online (Sandbox Code Playgroud)

控制器(以防万一)

def create_quote
    @quote_request = QuoteRequest.new safe_quote_params

    if @quote_request.save
      @email = SiteMailer.quote_request(@quote_request).deliver
      render :template => "request/quote_sent"
    else
      @series = Series.find params[:quote_request][:series_id] unless params[:quote_request][:series_id].blank?
       render :template => "request/quote.html"
    end
  end
Run Code Online (Sandbox Code Playgroud)

validation ruby-on-rails radio-button

5
推荐指数
1
解决办法
3690
查看次数

Rspec: let 与 let 带感叹号

可以来给我解释一下为什么必须使用 let !而不是在这种情况下让?只有当我包含 ! 时,测试才会通过。我以为我明白 let 会在该块中的每个“it”语句之前自动执行,但显然情况并非如此。

describe Artist do

  before do
  @artist = Artist.new(name: "Example User", email: "user@example.com",
                 password: "foobar", password_confirmation: "foobar")
  end
  subject { @artist }

  describe "virtual requests" do
    let!(:virtual1) { FactoryGirl.create(:virtual_request, artist: @artist ) }
    let!(:virtual2) { FactoryGirl.create(:virtual_request, artist: @artist ) }

    it "should be multiple" do
      @artist.virtual_requests.count.should == 2 
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

rspec ruby-on-rails capybara ruby-on-rails-4

4
推荐指数
1
解决办法
1416
查看次数

Rails 4 Ajax请求,没有真实性令牌

我在我的应用程序中通过javascript发送一些非常简单的ajax帖子和补丁请求.功能很好,按预期工作.但是,我没有在ajax请求参数中看到真实性令牌,它仍然有效.

javascript(jQuery)

$.ajax({
  type:'PATCH', 
  url: '/dashboard/goals/#{@goal.id}.js', 
  data: $.param({ 
    new_invitation: { 
      recipient_id: recId, 
      type: "GoalInvite", 
      user_id : #{current_user.id}
    }
  })
}); 
Run Code Online (Sandbox Code Playgroud)

并且参数在日志中显示如下 -

Parameters: {"new_invitation"=>{"recipient_id"=>"24", "type"=>"GoalInvite", "user_id"=>"23"}, "id"=>"234"}
Run Code Online (Sandbox Code Playgroud)

没有真实性令牌.我想我知道如何添加它,但我很惊讶它甚至没有它.任何人都可以对此有所了解吗?

ajax jquery ruby-on-rails authenticity-token

4
推荐指数
1
解决办法
3044
查看次数