0

我将我的用户性别存储为字符串男性/女性(因为这是从 Facebook API 检索的方式)

目标是根据登录用户的性别按性别呈现部分显示用户,但我在设置助手时遇到了一些麻烦

def male 
  @male = @user.gender.male
end

那么我的看法..

<% @users.male.each do |male| %>
    <ul>
        <li><%= male.firstname %></li>
        <li><%= male.age %></li>
        <li><%= male.location %></li>
    </ul>

我做错了什么,多年来一直被困在这个问题上:(

4

1 回答 1

0

您可以使用范围:

class User < ActiveRecord::Base
  scope :male, -> { where gender: 'male' }
  scope :female, -> { where gender: 'female' }
end

控制器:

def index
  @users = User.all
  @males = @users.male # or use User.male, but @users might already be filtered
  @females = @users.female
end

在您看来:

<%= @males.each do |user| %>
  ...
<% end %>
于 2013-10-24T14:11:36.790 回答