win*_*yer 5 elixir phoenix-framework
我想将逻辑添加到web/templates/user/form.html.eex中,该逻辑user#new在. 但如果我执行以下代码,则会出现错误。user#edit@current_userassign @current_user not available in eex template
<%= if @current_user do %>
<h1>Example</h1>
<% end %>
Run Code Online (Sandbox Code Playgroud)
我怎样才能@current_user在 中提供form.html.eex?
假设您正在form.html.eex使用以下内容进行渲染:
render("form.html.eex", changeset: @changeset, conn: @conn)
Run Code Online (Sandbox Code Playgroud)
并且您正在渲染“父”模板并@current_user在分配中可用。
您可以在模板中传入@current_user该函数:render
render("form.html.eex", changeset: @changeset, conn: @conn, current_user: @current_user)
Run Code Online (Sandbox Code Playgroud)
您可以通过以下方式传递分配中的所有内容:
render("form.html.eex", @conn.assigns)
Run Code Online (Sandbox Code Playgroud)
但是,您应该谨慎执行此操作,记住显式优于隐式。
| 归档时间: |
|
| 查看次数: |
1301 次 |
| 最近记录: |