質問編集履歴

1 誤字修正

hikaru923

hikaru923 score 27

2017/02/09 21:34  投稿

RubyonRailsでselectフォーム選択で同時に2つのカラムにデータを格納したい
###前提・実現したいこと
現在、利用者から管理者側に「私のこういう所を見てください!」という
PRポイントを選びメールを送信するという機能を
実装しようと思っています。(意義については聞かないでください…)
PRポイントとは、例えば
Userテーブル内のカラムにおきまして
pr_id = 1, pr_name = ゲームが上手い
pr_id = 2, pr_name = すぐに寝る
のような組で、それをselectフォームで
プルダウン形式で一つだけ選択し
メール一覧テーブル内のカラムにそれぞれ格納しようと思っています。
例えば、ゲームが上手い を選択したら pr_id =1とpr_name = ゲームが上手い
がMailテーブル内のカラムに格納されるといった形です。
ちなみにMailテーブル内のカラムは
[user_id,admin_id,pr_id,pr_name,created_at,updated_at]
みたいなのを想定しています。
###発生している問題・エラーメッセージ
一つのselectフォーム?で二つのカラムにデータを格納できません…
一フォーム、一カラム…
現状pr_idしか指定していないので、pr_nameにデータを格納出来ず。
同じ内容のプルダウンを二連続で配置するという方法しか思いつきません。
###該当のソースコード
```ruby
<%= c.select :pr_id, options_from_collection_for_select(User.where(["pr_id",current_user.id]), :id, :pr_name) %>
<%= c.select :pr_id, options_from_collection_for_select(User.where(["id",current_user.id]), :pr_id, :pr_name) %>
```
###試したこと
色々調べましたが、一つのselectフォームで二つのカラムに同時にデータを格納する方法を見つける事が出来ませんでした…
selectフォームの直後に
User.find(pr_id = :pr_id).pr_name
とか入れてみたり…そもそもどのようにしてプログラムが動いているのかの根本的な理解が足りていないので
確信を持てないままそれっぽいことを繰り返していました…そして撃沈。
###謝辞
問題解決にあたり、何か必要な情報などありましたら遠慮なくお申し付けください。随時追加させていただきます!
ここまで目を通していただき誠にありがとうございました。
何卒、お力添えをよろしくお願い申し上げます。
  • Ruby on Rails

    15921 questions

    Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る