Rails Newbie。穏やかな。より多くのものを見せる必要があるなら、私はそれをやるでしょう。複数の出力をレールに接続
ニュースレターの購読ブロックをプロジェクトのフッターの上に挿入しようとしましたが、レイアウトに部分的に表示されませんでした。
私は、ブログからインデックスを出力しています。
現時点では、ローカルホストで「false」と表示されています。
異なるインデックスに対して複数の利回りを設定することはできますか?
レイアウトページに別のページを挿入することはできますか?
application.html.erb
<div id="blog">
<%= yield %>
</div>
<div>
<%= content_for?(:newsletter) ? yield(:newsletter) : yield %>
</div>
<div>
<%= render 'layouts/footer' %>
</div>
newsletter.html.erb
<% content_for :newsletter do %>
<h1>Get My Awesome News Letter</h1>
<p>Give me your email and keep up to date on my cat's thoughts.</p>
<%= form_tag('/emailapi/subscribe', method: "post", id: "subscribe", remote: "true") do -%>
<%= email_field(:email, :address, {id: "email", placeholder: "email address"}) %>
<%= submit_tag("Sign me up!") %>
<% end %>
emailapi_controller.rb
class EmailapiController < ApplicationController
def newsletter
render params[:newsletter]
end
def subscribe
gb = Gibbon::Request.new
gb.lists.subscribe({
:id => ENV["MAILCHIMP_LIST_ID"],
:email => {:email => params[:email][:address]}
})
end
end
routes.rbを
root to: 'posts#index'
get "/:newsletter" => 'emailapi#newsletter'
post 'emailapi/subscribe' => 'emailapi#subscribe'
をあなたはこの条件テストを必要はありません:ニュースレター)? yield :(ニュースレター):基本的にあなたのために行う、試してみましょう。( '<%='事項に注意してください)http://apidock.com/rails/ v4.2.1/ActionView/Helpers/CaptureHelper/content_for –