0
让我解释一下这个场景.. !! 我已经使用设计进行身份验证。在数据库中设计表被命名为“用户”。现在我有另一个名为“book”的表,用于存储用户标识。如何从其他表中检索值?
class CreateBooks < ActiveRecord::Migration
def change
create_table :books do |t|
t.integer "user_id", :limit =>5
t.string "book_name", :limit => 50
t.integer "edition", :limit => 5
t.string "author", :limit => 30
t.string "branch", :limit => 30
t.string "publisher", :limit => 50
t.integer "year", :limit => 10
t.text "details"
t.timestamps
end
add_index :books, "user_id"
end
end
我将userid存储在book表中,这样我就不能显示这本书对这个用户可用。但显示在图书页面没有道理只有用户ID所以我做了命名为s_user
class CreateSUsers < ActiveRecord::Migration
def change
create_table :s_users do |t|
t.integer "user_id", :limit => 5
t.string "fullname", :limit => 25
t.string "email", :default => "", :null => false
t.string "hashed_password", :limit => 40
t.string "salt", :limit => 40
t.string "address",:limit => 25
t.text "details"
t.timestamps
end
add_index :s_users, "user_id"
end
end
存储喜欢他/她的姓名,地址,电话用户的完整信息,没有另一个表。 我与书和用户之间的关系是对许多和一对一的用户对s_user。 所以我没有得到如何显示存储在s_user表中的用户信息。 我做了什么我正在写在这里: 在控制器
@books = Book.all
在
<tr>
<th>S.No</th>
<th>Book Name</th>
<th>Year </th>
<th>Owner id</th>
<th>Owner Details</th>
</tr>
</thead>
<tbody>
<% @books.each do |b| %>
<tr>
<td><%= b.id%></td>
<td><%= b.book_name%></td>
<td><%= b.year%></td>
<td><%= b.user_id%></td>
</tr>
<%end%>
现在下业主的细节,我想显示用户细节的意见。我没有得到如何显示?
我觉得你没有得到实际的场景。实际上,当用户(店主)登录时,用户的ID会自动保存到书桌上,同时添加一本新书(我已提供店主添加,删除,编辑特权到他的书籍记录)。我的问题是,如何通过此user_id(它保存在书本表n中,由devise创建)检索用户详细信息(即SUser表数据)。 –
我也想提醒你,设计的桌子是不同的,店主的桌子是不同的。这两张表之间也有一对一的关系。和表和用户表(设计)之间的多对多关系。 –
我想这样做 'v = Book.user_id' 'a = SUser.find_by_user_id(v)' 'b = a.address' –