【heroku × Ruby × MySQL】 herokuへデプロイした際に発生したエラーを解決したいです
解決したいこと
【heroku × Ruby × MySQL】
herokuへデプロイした際に発生したエラーを解決したいです。
ローカル環境では問題ありませんでした。
Ruby:2.6.5
Rails:6.0.3.6
発生している問題・エラー
ActionView::Template::Error (undefined method `color' for
仮説としてはタグを投稿する際にカラーパレットからカラーを登録、一覧表示する際に登録したカラーが投稿タグの背景カラーになるようにしているのですが、その一覧表示する際にエラーが発生していると思われます。
該当するソースコード
index.html.erb (トップページ)
<div class="main">
<!--検索欄 -->
<div class="">
<%= form_with(url: search_tags_path, local: true, method: :get, class: "") do |form| %>
<%= form.text_field :keyword, placeholder: "タグを検索する", class: "" %>
<%= form.submit "検索", class: "" %>
<% end %>
</div>
<!-- 投稿タグ一覧 -->
<div class="tag-main">
<p><タグ一覧></p>
<div class="tag-sub">
<% @tags.each do |tag| %>
<div style="background-color:<%= tag.color %>">
<p>#<%= link_to tag.text_tag, tag_path(tag.id) %></p>
</div>
<p>by.<%= link_to tag.user.nickname, user_path(tag.user.id), method: :get %></p>
<% end %>
</div>
</div>
<!-- プロジェクト一覧 -->
<div class="project-main">
<p><プロジェクト一覧></p>
<div class="card">
<% @projects.each do |project| %>
<div class="card_body">
<p>【プロジェクト名】: <%= link_to project.main_title, project_path(project.id) %></p>
<%= link_to image_tag(project.image), class: :img %>
<p>【開始日】:<%= project.start_date %></p>
<p>【終了日】:<%= project.finish_date %></p>
<p>by.<%= link_to project.user.nickname, user_path(project.user.id) %></p>
</div>
<% end %>
</div>
</div>
</div>
new.html.erb (タグ作成ページ)
<div class="">
<div class="">
<h3>タグを作成する</h3>
<%= form_with(model: @tag, local: true) do |form| %>
<%= form.text_field :text_tag, placeholder: "tag" %>
<%= form.text_field :text_memo, placeholder: "memo" %>
<p>【Color】<%= form.color_field :color %></p>
<%= form.submit "作成する" %>
<% end %>
</div>
</div>
tags_controller.rb (タグコントローラー)
class TagsController < ApplicationController
before_action :authenticate_user!, except: [:index, :show]
before_action :find_params, only: [:edit, :show]
def index
@tags = Tag.includes(:user).order("created_at DESC")
@projects = Project.includes(:user).order("created_at DESC")
end
def new
@tag = Tag.new
end
def create
Tag.create(tag_params)
end
def destroy
tag = Tag.find(params[:id])
tag.destroy
end
def edit
end
def update
tag = Tag.find(params[:id])
tag.update(tag_params)
end
def show
@tag = Tag.find(params[:id])
end
def search
@tags = Tag.search(params[:keyword])
end
private
def tag_params
params.require(:tag).permit(:text_tag, :text_memo, :color).merge(user_id: current_user.id)
end
def find_params
@tag = Tag.find(params[:id])
end
end
mysql(tagsテーブル)
自分で試したこと
上記仮説よりheroku上でのmysqlのマイグレーションを実施したが解決されず。
0