Ответ 1
Вы должны поместить опцию: protocol внутри помощника пути:
<%= link_to "Buy now!", line_items_url(:thing_id => @thing, :protocol => "https"), :method => :post %>
Я хочу, чтобы ссылка использовала SSL. Я использую этот код:
<%= link_to "Buy now!", line_items_path(:thing_id => @thing), :method => :post, :protocol => "https", :only_path => false %>
По какой-то причине ссылка создается с помощью http://
вместо https://
.
Я использую Rails 3.0.3.
Вы должны поместить опцию: protocol внутри помощника пути:
<%= link_to "Buy now!", line_items_url(:thing_id => @thing, :protocol => "https"), :method => :post %>
Если вы используете bartt-ssl_requirement rubygem в своем приложении, вы можете использовать ssl-url-helper, чтобы явно указывать протокол http или https.
Преимущества:
Если вы отключили проверку SSL (в среде разработки) следующим образом: SslRequirement.disable_ssl_check = true
, то передача :secure => true
не будет явно добавлять ссылки https к вашему представлению. Это не так, если вы указываете :protocol => 'https'
и отключите проверку SSL.
Кроме того, не нужно менять line_items_path
на line_items_url
в каждом месте.