在浏览器中显示为HTML文件的ERb文件

问题描述:

中断后,我回到了rails中,ERB没有按预期呈现。我从一个全新的项目中打开了一个视图,在Chrome和Firefox中打开了一个旧项目的视图。在所有四种排列中都是同样的问题。在浏览器中显示为HTML文件的ERb文件

这里的_form.html.erb

<%= form_for(@cat) do |f| %> 
    <% if @cat.errors.any? %> 
    <div id="error_explanation"> 
     <h2><%= pluralize(@cat.errors.count, "error") %> prohibited this cat from being saved:</h2> 

     <ul> 
     <% @cat.errors.full_messages.each do |message| %> 
     <li><%= message %></li> 
     <% end %> 
     </ul> 
    </div> 
    <% end %> 

    <div class="field"> 
    <%= f.label :birth_date %><br> 
    <%= f.date_select :birth_date %> 
    </div> 
    <div class="field"> 
    <%= f.label :color %><br> 
    <%= f.text_field :color %> 
    </div> 
    <div class="field"> 
    <%= f.label :name %><br> 
    <%= f.text_field :name %> 
    </div> 
    <div class="field"> 
    <%= f.label :sex %><br> 
    <%= f.text_field :sex %> 
    </div> 
    <div class="field"> 
    <%= f.label :description %><br> 
    <%= f.text_area :description %> 
    </div> 
    <div class="actions"> 
    <%= f.submit %> 
    </div> 
<% end %> 

而这里的new.html.erb

<h1>New Cat</h1> 

<%= render 'form' %> 

<%= link_to 'Back', cats_path %> 

这里就是浏览器呈现:

contents of html.erb file, displayed as an html file

我运行轨4.2.1和红宝石2.2.1,我是两个版本的全新。

+0

没有足够的信息来帮助;相关的项目结构(例如'app' dir),样本控制器等,也可能是Gemfile。 – 2015-04-03 00:18:34

+0

谢谢,我只是在github上添加了一个应用程序的链接;我会确保这个SO帖子反映了问题和解决方案的最终结果。 – rainbowsorbet 2015-04-03 00:30:37

事实证明,我以我习惯于HTML文件(Command + O - >选择文件)的方式在浏览器中打开ERb文件。难怪它被认为是HTML!

对于后代:您必须导航到终端中的应用程序目录,使用“rails s”启动rails服务器,并从localhost:3000导航到您的视图。

我想你的views目录中可能有一个挥之不去的new.html

+0

谢谢你的想法,但我仔细检查过,事实并非如此。此外,[这篇文章](http://stackoverflow.com/questions/20292752/opening-html-erb-files-in-browser)意味着rails 4不允许你在浏览器中打开视图进行检查(和这就像我已经得到)。 – rainbowsorbet 2015-04-03 00:10:36

+0

你可以发布你的代码到github回购,所以我可以检讨它吗? – 2015-04-03 00:14:01

+0

解决了这个问题,谢谢你看这个 – rainbowsorbet 2015-04-03 00:44:38