gpt4 book ai didi

ruby-on-rails - has_one 关系的 Rails 验证

转载 作者:行者123 更新时间:2023-12-05 08:00:54 24 4
gpt4 key购买 nike

我有两个模型:

class Employee
field :name
field :login, type: Boolean
has_one :user
end

class User
field :username
field :email
belongs_to :employee
validates_presence_of :username
end

如果选中登录字段的复选框,我想在创建员工时创建一个用户帐户。为此,我的员工 Controller 的新操作是:

def index
@employee = Employee.new
@employee.build_user
end

为此,我的表单代码是:

<%= simple_form_for(@employee) %>
<%= f.input :login, :as => :boolean, :label => "Create User" %>
<div class="create-user" style="display: none">
<%= f.simple_fields_for :user do |u| %>
<%= render 'user_fields', {f: u} %>
<% end %>
</div>
<button class="btn btn-info">Save Change</button>
<% end %>

而 _user_fields.html.erb 是:

<%= f.input :username %>

我想在选中 :login 字段的 check_box 时验证用户模型。在未经检查的情况下,应提交表格。什么是更好的解决方案。

最佳答案

也许您可以将用户验证转移到雇主模型中?

类似下面的代码应该可以解决您的问题

validates_presence_of :username, :if => login?

你怎么看?

关于ruby-on-rails - has_one 关系的 Rails 验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16607029/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com