我试图使表单中的国家/地区输入的默认值为"美国".我正在使用简单形式的gem和国家选择gem.
在简单表单初始值设定项中,我设置了此默认值
config.country_priority = [ "United States" ]
Run Code Online (Sandbox Code Playgroud)
这使得最高值与美国一样正确,但默认值为"乌干达".
在_form视图中,我执行了以下操作:
<%= f.input :country, :default => [ 'United States' ] %>
Run Code Online (Sandbox Code Playgroud)
我重新启动了Rails,它仍然默认为乌干达.
我也尝试过以下方法:
<%= f.input :country, :default => 'United States' %>
Run Code Online (Sandbox Code Playgroud)
和
<%= f.input :country, :selected => 'United States' %>
Run Code Online (Sandbox Code Playgroud)
我接下来应该尝试什么?
当我尝试在SublimeREPL中为Python编写脚本时,它说:
ImportError: No module named 'matutil'
Run Code Online (Sandbox Code Playgroud)
我可以更改什么设置,以便Python REPL查找正确的目录?
我刚刚在部署服务器上安装了Rails 3.1应用程序.
当我试图跑
sudo rake db:setup RAILS_ENV=“production”
Run Code Online (Sandbox Code Playgroud)
我收到一条错误消息说
rake aborted!
undefined method `[]' for nil:NilClass
Run Code Online (Sandbox Code Playgroud)
用--trace说:
** Invoke db:setup (first_time)
** Invoke db:create (first_time)
** Invoke db:load_config (first_time)
** Invoke rails_env (first_time)
** Execute rails_env
** Execute db:load_config
** Execute db:create
rake aborted!
undefined method '[]' for nil:NilClass
/usr/local/lib/ruby/gems/1.9.1/gems/activerecord-3.1.0/lib/active_record/railties/databases.rake:74:in 'rescue in create_database'
/usr/local/lib/ruby/gems/1.9.1/gems/activerecord-3.1.0/lib/active_record/railties/databases.rake:54:in 'create_database'
/usr/local/lib/ruby/gems/1.9.1/gems/activerecord-3.1.0/lib/active_record/railties/databases.rake:44:in 'block (2 levels) in <top (required)>'
/usr/local/lib/ruby/gems/1.9.1/gems/rake-0.9.2/lib/rake/task.rb:205:in 'call'
/usr/local/lib/ruby/gems/1.9.1/gems/rake-0.9.2/lib/rake/task.rb:205:in 'block in execute'
/usr/local/lib/ruby/gems/1.9.1/gems/rake-0.9.2/lib/rake/task.rb:200:in 'each'
/usr/local/lib/ruby/gems/1.9.1/gems/rake-0.9.2/lib/rake/task.rb:200:in 'execute'
/usr/local/lib/ruby/gems/1.9.1/gems/rake-0.9.2/lib/rake/task.rb:158:in 'block in invoke_with_call_chain'
/usr/local/lib/ruby/1.9.1/monitor.rb:201:in 'mon_synchronize'
/usr/local/lib/ruby/gems/1.9.1/gems/rake-0.9.2/lib/rake/task.rb:151:in 'invoke_with_call_chain'
/usr/local/lib/ruby/gems/1.9.1/gems/rake-0.9.2/lib/rake/task.rb:176:in …Run Code Online (Sandbox Code Playgroud) 我正在通过Agile Web教程进行一些细微的更改.当我在Rails 3.2中运行功能测试时,我收到以下错误:
test_should_get_new(OrdersControllerTest):
ActiveModel::MassAssignmentSecurity::Error: Can't mass-assign protected attributes: cart, deal
Run Code Online (Sandbox Code Playgroud)
这是orders_controller_test.rb代码:
test "should get new" do
cart = Cart.create
session[:cart_id] = cart.id
LineItem.create(cart: cart, deal: deals(:one))
get :new
assert_response :success
end
Run Code Online (Sandbox Code Playgroud)
这是订单夹具:
one:
name: MyString
address: MyText
email: MyString
pay_type: Check
Run Code Online (Sandbox Code Playgroud)
这是行项目装置:
one:
deal: one
order: one
Run Code Online (Sandbox Code Playgroud)
这是交易夹具:
one:
title: MyString
description: MyText
image_url: MyString
price: 9.99
Run Code Online (Sandbox Code Playgroud)
这是订单控制器代码:
def new
@cart = current_cart
if @cart.line_items.empty?
redirect_to store_url, notice: "Your cart is empty"
return
end
@order = Order.new
respond_to do …Run Code Online (Sandbox Code Playgroud)