1

ActionView::Template::Error (First argument in form cannot contain nil or be empty):单击注册链接时出现错误。我创建了一个部分表单,然后在 new.html.erb 文件上呈现它。该错误似乎来自用户控制器。这是代码。

class UsersController <  Clearance::UsersController
  def new
    @user = User.new 
  end

  def show
    @user = User.find(params[:id])
    @shouts = @user.shouts
  end

  private

   def new
     @user = User.new
     render template: "users/new"
   end

   def user_params
     params.require(:user).permit(:username, :email, :password)
   end
end

用户/new.html.erb

<div id="clearance" class="sign-up">
  <h2><%= t(".title") %></h2>

  <%= form_for @user do |form| %>
    <%= render partial: '/users/form', object: form %>

    <div class="submit-field">
      <%= form.submit %>
    </div>

    <div class="other-links">
      <%= link_to t(".sign_in"), sign_in_path %>
    </div>
  <% end %>
</div>

_form.html.erb

<div class="text-field">
  <%= form.label :email %>
  <%= form.email_field :email%>
</div>

<div class="text-field">
  <%= form.label :username %>
  <%= form.text_field :username%>
</div>

<div class="password-field">
  <%= form.label :password %>
  <%= form.password_field :password %>
</div>
4

0 回答 0