Rails在缺少部分测试/测试时呈现错误

时间:2013-11-26 11:04:46

标签: ruby-on-rails ruby ruby-on-rails-3

这是基础结构html代码。

<!DOCTYPE html>
<html>
    <head>
        <title>Layout</title>
        <link rel="stylesheet" href="style.css" />

    </head>
    <body>

        <!-- UI Object -->
        <div id="wrap">
            <p>
                #wrap
            </p>
            <!-- header -->
            <div id="header">

                <p>
                    #header
                </p>

            </div>
            <!-- //header -->
            <!-- container -->
            <div id="container">
                <p>
                    #container
                </p>
                <!-- snb -->
                <div class="snb">
                    Login
                    <input/>
                    <input/>
                    <button>
                        Login
                    </button>
                </div>
                <%=render "test/test"%>
                <!-- //snb -->
                <!-- content -->
                <!-- <div id="content">
                    <p>
                        #content
                    </p>

                </div> -->

                <!-- //content -->
            </div>
            <!-- //container -->
            <!-- footer -->
            <div id="footer">
                <p>
                    #footer
                </p>
            </div>
            <!-- //footer -->
        </div>
        <!-- //UI Object -->

    </body>
</html>

在这里,“内容”部分将是动态部分,将被更改。

所以我使用<%=render "test/test"%>来渲染代码,

/views/test/test.html.erb

但如果我这样做,

它会抛出这样的错误,

Missing partial test/test with {:locale=>[:en], :formats=>[:html], :handlers=>[:erb, :builder, :coffee]}. Searched in:

当然,我试图像这样设置那个参数,

<%= render :partial => 'test/test', :locale=>[:en], :formats=>[:html], :handlers=>[:erb, :builder, :coffee] %>

但仍然有同样的错误。

有什么好的解决方案吗?

3 个答案:

答案 0 :(得分:4)

只需将 /views/test/test.html.erb 文件重命名为 _test.html.erb 即可。它会起作用:)

答案 1 :(得分:1)

部分文件应使用前导“ _ ”命名,例如 _test.html.erb

答案 2 :(得分:0)

部分文件名应以下划线(_)作为前缀。