質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Devise

Deviseとは、Ruby-on-Railsの認証機能を追加するプラグインです。

Ruby on Rails

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

データベース

データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

保存

保存(save)とは、特定のファイルを、ハードディスク等の外部記憶装置に記録する行為を指します。

CSSフレームワーク

CSSフレームワークは、Webページのスタイルを指定する言語であるCSSを容易に構築するためのツールです。ツイッター社が開発した「Bootstrap」や段組レイアウトが可能な「Foundation」など様々なCSSフレームワークがあります。

Q&A

0回答

1333閲覧

Rails6(devise)とMaterializeを使って、プルダウンの表示・データベースへの保存をする方法について

cherry2020

総合スコア10

Devise

Deviseとは、Ruby-on-Railsの認証機能を追加するプラグインです。

Ruby on Rails

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

データベース

データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

保存

保存(save)とは、特定のファイルを、ハードディスク等の外部記憶装置に記録する行為を指します。

CSSフレームワーク

CSSフレームワークは、Webページのスタイルを指定する言語であるCSSを容易に構築するためのツールです。ツイッター社が開発した「Bootstrap」や段組レイアウトが可能な「Foundation」など様々なCSSフレームワークがあります。

0グッド

0クリップ

投稿2021/01/09 10:50

前提・実現したいこと

こんばんは。
プログラミング勉強を初めて5ヶ月の者です。

Railsにて、オリジナルアプリを作っています。
ユーザーの新規登録において、生年月日を入力できるようにしたいのですが、プルダウンを表示できません。

実現したいこととしては、ユーザーに生年月日を入力してもらい、データーベースのbirthdayカラムにデータが保存されるように実装したいです。
Materializeを使用すると、Railsのヘルパーは使用できないのでしょうか?

イメージ説明

本当は、このような形で選べるように表示したいです。
イメージ説明

現状

  • Rails6にて作成。
  • ユーザー管理のためにdeviseを導入。
  • cssフレームワークとしてMaterializeを使用。
VSコードの状況(HTMLとcssにあたる部分)

イメージ説明

VSコードの状況(全体的な階層)

Materializeを使用するためにJavaScript配下にcssファイルを作成。
イメージ説明

ターミナルの状況

イメージ説明

JavaScriptの状況

マテリアライズのホームページにある、JavaScriptファイルの初期化を行なっている。

document.addEventListener('DOMContentLoaded', function() { var elems = document.querySelectorAll('select'); var instances = M.FormSelect.init(elems, options); });

イメージ説明

調べたこと・仮説

初めはプルダウンそのものの記述が誤っていると思い調べていたのですが、検証では、option valueが生成されている様子なので、だんだんとプルダウンが表示できない原因はMaterializeではないかと思い始めました。

上記の記事も参考にさせていただきました。

試したこと

マテリアライズのホームページにある、

<label>Browser Select</label> <select class="browser-default"> <option value="" disabled selected>Choose your option</option> <option value="1">Option 1</option> <option value="2">Option 2</option> <option value="3">Option 3</option> </select>

app/views/devise/registrations/new.html.erbに表示されると、プルダウンでオプション1、2、3が表示された。

以上です。

マテリアライズを使って、プルダウン(今回は生年月日)を表示させる方法、表示した後、選択したデータを最終的にデータベースに保存できる方法を教えてください。

どうかお知恵をいただけると嬉しいです。
よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問