Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 如何在RubyonRails解决方案的.erb文件中进行播放器验证_Ruby On Rails_Ruby_Erb - Fatal编程技术网

Ruby on rails 如何在RubyonRails解决方案的.erb文件中进行播放器验证

Ruby on rails 如何在RubyonRails解决方案的.erb文件中进行播放器验证,ruby-on-rails,ruby,erb,Ruby On Rails,Ruby,Erb,在我的Ruby on Rails解决方案视图中,我创建了一个html.erb页面,其中包含以下代码: <h1>New Game</h1> <%= form_for @game do |f| %> <p> <%= f.label :player_1 %><br/> <%= f.text_field :player_1 %> </p> <p> <%

在我的Ruby on Rails解决方案视图中,我创建了一个html.erb页面,其中包含以下代码:

<h1>New Game</h1>

<%= form_for @game do |f| %>
  <p>
    <%= f.label :player_1 %><br/>
    <%= f.text_field :player_1 %>
  </p>

  <p>
    <%= f.label :player_2 %><br/>
    <%= f.text_field :player_2 %>
  </p>

  <p>
    <%= f.submit "Create Game" %>
  </p>
<% end %>
任务是验证玩家的输入是否相同,以及是否留下空字段,我不确定如何进行验证。

对于服务器端验证:

在app/models/game.rb中,您需要进行以下验证:

validates :player_1, :player_2, presence: true
validate :player_names_uniq

def player_names_uniq
  errors.add(:base, "Player names can't be equal") if (self.player_1 == self.player_2)
end
对于客户端验证:

我不知道如何在客户端执行平等性验证

<h1>New Game</h1>

<%= form_for @game do |f| %>
  <p>
    <%= f.label :player_1 %><br/>
    <%= f.text_field :player_1 required: true %>
  </p>

  <p>
    <%= f.label :player_2 %><br/>
    <%= f.text_field :player_2 required: true %>
  </p>

  <p>
    <%= f.submit "Create Game" %>
  </p>
<% end %>

你可以添加客户端验证和服务器端验证。我看不出投票失败的原因……他们也可以评论投票失败的原因吗?@VamsiKrishna当然不能。这个人在乞讨时不能要求有礼貌的回答。