前提・実現したいこと
Ruby on Railsで、体温管理アプリを作成しています。
グループ機能を使って、ユーザー同士でグループを作り、
メンバーの名前をクリックすると、そのメンバーのグラフが表示されるというアプリにしたいです。
フォーム画面入力→グラフの描画はできますが、このままではみんな同じグラフに
入力データが入ってしまっています。
各々のユーザーのid事にグラフが切り替わって、ページが表示するようにはできるのでしょうか。
どなたか教えてほしいです。
該当のソースコード
Ruby
1class RecordsController < ApplicationController 2 before_action :set_family 3 before_action :currect_user, only: [:destroy] 4 5 def show 6 @user = User.find(params[:id]) 7 @weights = @user.records 8 @record = Record.find(params[:id]) 9 @graph_records = @user.records.pluck(:value) 10 @graph_date = @user.records.pluck(:date).map{|date| date.strftime("%m/%d")} 11 end 12 13 def index 14 @record = Record.new 15 @records = current_user.records 16 @graph_records = current_user.records.pluck(:value) 17 @graph_date = current_user.records.pluck(:date).map{|date| date.strftime("%m/%d")} 18 end 19 20 21 def create 22 @record = @family.records.new(record_params) 23 if @record.save 24 flash[:notice] = '体温を投稿しました。' 25 else 26 @records = @family.records.includes(:user) 27 flash[:alert] = '体温の投稿に失敗しました。' 28 end 29 redirect_to family_record_path(@record, @family, @user) 30 end 31 32 private 33 def record_params 34 params.require(:record).permit(:value, :date).merge(user_id: current_user.id) 35 end 36 37 def set_family 38 @family = Family.find(params[:family_id]) 39 end 40end 41
補足情報(FW/ツールのバージョンなど)
・Rails 5.0.7.2
・ruby 2.5.1p57
・postgreSQL
Ruby
1class User < ApplicationRecord 2 # Include default devise modules. Others available are: 3 # :confirmable, :lockable, :timeoutable, :trackable and :omniauthable 4 devise :database_authenticatable, :registerable, 5 :recoverable, :rememberable, :validatable 6 validates :name, presence: true, uniqueness: true 7 8 has_many :family_users 9 has_many :families, through: :family_users 10 has_many :records 11end 12
Ruby
1class Record < ApplicationRecord 2 belongs_to :family 3 belongs_to :user 4 5 validates :user_id, presence: true 6 validates :value, presence: true 7end
Ruby
1class Family < ApplicationRecord 2 has_many :family_users 3 has_many :users, through: :family_users 4 has_many :records 5 validates :name, presence: true, uniqueness: true 6end
あなたの回答
tips
プレビュー