Ruby on rails Rails在每页嵌入注册表单时的最佳实践

Ruby on rails Rails在每页嵌入注册表单时的最佳实践,ruby-on-rails,forms,validation,Ruby On Rails,Forms,Validation,我有一个用户模型,后面有一些验证 我想做的是在应用程序的每个页面上都有一个注册表单,即使是最静态的页面 我认为最好的方法是通过application\u helpers.rb中的helper方法来实现,这很好,但验证似乎不起作用 我也可以通过iframe提供表单,但这似乎有点粗糙 我现在使用的是partials,但是我的客户端验证(github.com/bcardarella/client_-side_-validations)只在/new页面上工作,而不是在应用程序页面上 在这种情况下,最好的

我有一个用户模型,后面有一些验证

我想做的是在应用程序的每个页面上都有一个注册表单,即使是最静态的页面

我认为最好的方法是通过
application\u helpers.rb
中的helper方法来实现,这很好,但验证似乎不起作用

我也可以通过iframe提供表单,但这似乎有点粗糙


我现在使用的是partials,但是我的客户端验证(github.com/bcardarella/client_-side_-validations)只在/new页面上工作,而不是在应用程序页面上


在这种情况下,最好的做法是什么?

我建议将注册表单提取到共享部分中,然后可以显式地呈现在任何需要的地方


如果无论您当前在哪个页面上,位置都是静态的,则可以直接在布局文件(
app/views/layout/application.html.erb)中呈现注册表单。

我建议将注册表单提取到共享部分中,然后您可以显式地在任何地方呈现它


如果无论您当前在哪个页面上,位置都是静态的,则可以直接在布局文件(
app/views/layout/application.html.erb)中呈现注册表单。

基本解决方案之一是使用局部。好处是:它是内置的,很简单。缺点是:您将忙于向它提供一些会话详细信息,以便进行适当的渲染

另一个解决方案是用于这种情况


Cells就像一个轻量级控制器,它可以做任何控制器可以做的事情,并且它独立于任何控制器。Cells的一个很好的用例是购物车,在我看来,登录表单也是一个很好的用例。

基本解决方案之一是使用partial。好处是:它是内置的,很简单。缺点是:您将忙于向它提供一些会话详细信息,以便进行适当的渲染

另一个解决方案是用于这种情况


Cells就像一个轻量级控制器,它可以做任何控制器可以做的事情,并且它独立于任何控制器。Cells的一个很好的用例是购物车,我认为登录表单也是一个很好的用例。

这就是我现在要做的,但是我的客户端验证()只在/new页面有效,而不是在application页面。为什么?客户端验证并不关心你在哪一页,对吗?只要你需要应用程序清单中的JavaScript文件,我就知道了。甚至不是我想象的那样。我的注册表单在一个弹出窗口中,由于弹出窗口以display:none开头,客户端的验证将跳过它。谢谢你的帮助!我如何才能通过此部分进行验证?假设我是一个静态页面,呈现这个动态部分,我如何得到验证错误?你能给我一些关于这个问题的上下文吗。代码可以帮助我可视化您的问题。这就是我现在正在做的,但是我的客户端验证()只在/new页面上有效,而不是在应用程序页面上。为什么?客户端验证并不关心你在哪一页,对吗?只要你需要应用程序清单中的JavaScript文件,我就知道了。甚至不是我想象的那样。我的注册表单在一个弹出窗口中,由于弹出窗口以display:none开头,客户端的验证将跳过它。谢谢你的帮助!我如何才能通过此部分进行验证?假设我是一个静态页面,呈现这个动态部分,我如何得到验证错误?你能给我一些关于这个问题的上下文吗。代码可以帮助我可视化您的问题。我现在使用的是partials,但我的客户端验证(github.com/bcardarella/client_-side_-validations)只在/new页上有效,而不是在应用程序页上有效。@JacksonGariety,如果使用单元格,解决方案是将呈现逻辑移到单元格中。渲染的单元格不是一个部分,而是一个独立的组件。如何通过该部分进行验证?假设我是一个呈现这个动态部分的静态页面,如何获得验证错误?我现在使用的是部分,但我的客户端验证(github.com/bcardarella/client_-side_-validations)只在/new页面上有效,而不是在应用程序页面上。@JacksonGariety,如果使用单元格,解决方案是将呈现逻辑移到单元格中。渲染的单元格不是一个部分,而是一个独立的组件。如何通过该部分进行验证?假设我是一个呈现动态部分的静态页面,如何获得验证错误?