我正在使用第4版的书,我已完成发送确认电子邮件部分,但当我在浏览器中进行测试时,我在下订单时遇到问题...在本书中(图12.2:我们的结账屏幕)
Orders#中的ActionView :: MissingTemplate创建显示c:/Sites/final/app/views/notifier/order_received.text.erb,其中第7行被提升:
缺少部分line_items / line_item与{:locale => [:en],:formats => [:text],:handlers => [:erb,:builder,:jbuilder,:coffee]}。搜索:*“c:/ Sites / final / app / views”
提取的来源(第7行):
4:
5: You ordered the following items:
6:
7: <%= render @order.line_items %>
8:
9: We'll send you a separate e-mail when your order ships.
Rails.root:c:/ Sites / final
应用程序跟踪|框架跟踪|完整跟踪app / views / notifier / order_received.text.erb:7:在_app_views_notifier_order_received_text_erb___555088091_31657836'app / mailers / notifier.rb:12:inorder_received'app / controllers / orders_controller.rb:58:在创建'app / controllers /中的块中orders_controller.rb:54:increate'
任何想法???
答案 0 :(得分:1)
您缺少创建操作的订单视图模板。但是您可能不希望视图的模板 - 您可能希望重定向到另一个操作,具体取决于成功或失败。类似的东西:
def create
@person = Person.new(params[:person])
if @person.save
redirect_to @person, :notice => 'You successfully created person'
else
render :new
end
end
答案 1 :(得分:0)
问题出在&lt;%= render @ order.line_items%&gt; ! 我删除它,工作正常,接收电子邮件!