查看说用户为零,但 psql 显示我有用户
View says Users is nil, but psql shows I have users
我试图在一个视图中显示所有用户。我在 Ruby 2.1.1 上使用 Rails 4.1.0。我也在用Heroku
当我 运行 psql 命令 'select * from users' 它显示 3 个用户。但是,在视图中似乎认为我的@users 变量是 nil
这就是我的 view/controller/model 的样子:
查看: (app/views/status/index.html.erb)
<% if current_user %>
<h1>All users</h1>
<% if @users.nil? %>
users is nil
<% else %>
<% @users.each do |user| %>
<%= user %>
<% end %>
<% end %>
4
<% else %>
<%= render 'welcome' %>
<% end %>
控制器: (app/controllers/users_controller.rb)
class UsersController < ApplicationController
def index
@users = User.all
end
end
型号: (app/models/user.rb)
class User < ActiveRecord::Base
class << self
def from_omniauth(auth)
provider = auth.provider
uid = auth.uid
info = auth.info.symbolize_keys!
user = User.find_or_initialize_by(uid: uid, provider: provider)
user.name = info.name
user.avatar_url = info.image
user.profile_url = info.urls.send(provider.capitalize.to_sym)
user.save!
user
end
end
has_many :comments, dependent: :delete_all
end
任何关于我做错事的帮助或想法都会很棒。
要显示 UsersController
中设置的 User
个对象的列表,索引视图应位于名为 app/views/users/index.html.erb
的文件中。
不是您正在使用的 app/views/status/index.html.erb
。
app/views/status/index.html.erb
没有连接到UsersController
;所以 @users
在那里是零,它正确地显示了 users is nil
消息。
我试图在一个视图中显示所有用户。我在 Ruby 2.1.1 上使用 Rails 4.1.0。我也在用Heroku
当我 运行 psql 命令 'select * from users' 它显示 3 个用户。但是,在视图中似乎认为我的@users 变量是 nil
这就是我的 view/controller/model 的样子:
查看: (app/views/status/index.html.erb)
<% if current_user %>
<h1>All users</h1>
<% if @users.nil? %>
users is nil
<% else %>
<% @users.each do |user| %>
<%= user %>
<% end %>
<% end %>
4
<% else %>
<%= render 'welcome' %>
<% end %>
控制器: (app/controllers/users_controller.rb)
class UsersController < ApplicationController
def index
@users = User.all
end
end
型号: (app/models/user.rb)
class User < ActiveRecord::Base
class << self
def from_omniauth(auth)
provider = auth.provider
uid = auth.uid
info = auth.info.symbolize_keys!
user = User.find_or_initialize_by(uid: uid, provider: provider)
user.name = info.name
user.avatar_url = info.image
user.profile_url = info.urls.send(provider.capitalize.to_sym)
user.save!
user
end
end
has_many :comments, dependent: :delete_all
end
任何关于我做错事的帮助或想法都会很棒。
要显示 UsersController
中设置的 User
个对象的列表,索引视图应位于名为 app/views/users/index.html.erb
的文件中。
不是您正在使用的 app/views/status/index.html.erb
。
app/views/status/index.html.erb
没有连接到UsersController
;所以 @users
在那里是零,它正确地显示了 users is nil
消息。