我在哪里可以找到(并更改)“渲染”闪烁''使用的标记?

时间:2012-08-28 05:26:31

标签: ruby-on-rails render renderpartial

这是我使用Ruby on Rails的第一个项目,我正在研究前端代码;后端开发人员也是rails的新手。一个模板包含代码render 'flashes',当表单提交时出现错误时会触发该代码;但它产生的标记搞砸了,我想解决它。这是一个例子。 <!-- comments -->是我的:

<div id="flash">
    <div class="wrapper">
      <div title="Error" class="error"></div>  <!-- Empty div -->
        <p>Please enter a valid email</p>      <!-- p element sibling of div.error -->
      </div>                                   <!-- Closes div.wrapper -->
    </div>                                     <!-- Closes div#flash -->
</div>                                         <!-- Extra /div closes parent div -->

我更喜欢使用一个div作为消息,但最大的问题是最后的额外关闭div标记,它会关闭父分区,弄乱布局。

我看到错误消息在控制器中被定义为flash[:error] = "Please enter a valid email",但我不知道rails在哪里获得这个虚假标记。我可以编辑_flashes部分来修复此问题吗?我仔细考虑了该项目的文件系统,我不清楚这个标记的存在位置。

1 个答案:

答案 0 :(得分:2)

Rails源中没有_flashes.html.erb个文件。如果你正在看

render 'flashes'

在您的应用程序中,您或您运行的某个生成器将它放在那里。查看app/views/中的文件,查看一个名为_flashes.html.erb的文件,其中包含您在问题中提供的标记。找到该文件后,您应该可以对其进行修改,但是您需要修复损坏的HTML问题。

如果你在那里找不到它,请查看Gemfile中的宝石列表,特别是与主题/模板相关的宝石列表。您可能已经包含了一个包含此模板文件的gem(尽管比app/views/中存在的文件的可能性要小得多)。