私はこれについていくつかの投稿を見つけましたが、私がこれまでに取り組んだことは何もしていません。私はまだRailsにかなり慣れていません。基本的には、HTMLとCSSに精通していますが、Skillshare Railsクラスを受講し、それをRailstutorialの本と組み合わせる作業をしています。だから優しくしてください。
「アイテム」を作成できるユーザーがいる基本的なアプリがあります。私は足場を使って「アイテム」を立ち上げました。それらはマイクロポストである可能性もあります。しかし、scaffoldが作成するビューを使用して、電子メールアドレスではなくユーザーの電子メールアドレスを表示したいと思いました。モデル、ビュー、コントローラーで何を変更しますか?これが私が持っているものです。
コントローラ:
def email
@email = @item.user_id.email
end
見る:
<td><%= item.content %></td>
<td><%= @email %></td>
<td><%= link_to 'Show', item %></td>
<td><%= link_to 'Edit', edit_item_path(item) %></td>
<td><%= link_to 'Destroy', item, confirm: 'Are you sure?', method: :delete %></td>
アイテムモデル:
class Item < ActiveRecord::Base
attr_accessible :content, :user_id
validates :content, :length => { :maximum => 140 }
belongs_to :user
end
ユーザーモデル:
class User < ActiveRecord::Base
# Include default devise modules. Others available are:
# :token_authenticatable, :confirmable,
# :lockable, :timeoutable and :omniauthable
devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :trackable, :validatable
# Setup accessible (or protected) attributes for your model
attr_accessible :email, :password, :password_confirmation, :remember_me
has_many :items
end