平凡エンジニアによる平凡ブログ

平凡インフラエンジニアがスキルアップを目指してプログラミングやクラウドやサーバといったインフラのアウトプットをしていきます!

rails

【rails】time_ago_in_wordsについて

今回もメモ程度ですが、railsのDateHelperで定められている 「time_ago_in_words」について記載します。 time_ago_in_wordsとは 〜分前という表示を実現したい時に使用する railsのDateHelperで定められているヘルパーです。 ActionView::Helpers::DateHelpe…

【rails】deviseパスワード文字数の設定

備忘録として残します。 deviseをインストールして、ユーザ管理画面を実装した際に デフォルトだとパスワードの文字数は6文字から128文字になっています。 変更する場合は以下のファイルと設定値を変更すれば変更できます。 config/initializer/devise.rb co…

【rails】ローカルのrailsバージョンの確認方法

今回のテーマは簡単ではありますが、備忘録として残します。 ローカルでインストールされているrailsのバージョンが何か調べるコマンドについてです。 環境 mac os コマンド ローカルにインストールされているrailsのバージョンを調べるためには ターミナル…

【rails】deviseの日本語化

はじめに deviseの導入後、サインアップ画面を見ると以下の通りになってます。 こちらの英語表記を日本語表記にする手順をまとめます。 ※deviseの導入とviewの作成は完了している前提で進めます。 手順 1.設定ファイルを作成する config/locales配下に「devi…

【rails】active_hashの実装について

今回は「active_hash」の実装について記載します はじめに まずはactive_hashとは公式ページの英語から少しかいつまんで以下のような 説明にします。 ハッシュをデータベースに保存できるgemです。 データベースの外部キーを変更せずにActiveRecoreと同じよ…

【rails】yieldメソッドについて

最近railsでアプリケーションを作成していると、なんとなくはわかっているつまりだけど 何かよくわかっていないという基礎的な内容があります。 今回はまさにその代表格かもしれないですね。 今回はyieldメソッドについて私なりに簡単に記載します。 yieldメ…

【rails】単語の区分方法

今日は基礎的な内容からです。 プログラミングの際に単語の区切りに関して一般的に方法が2つあります。 それがスネークケースとキャメルケースというものです。 スネークケース:単語を_で区切る方法 例:item_statusなど キャメルケース:単語を大文字で区…

【rails】*** NO FILE ***というファイル表示が出て rollbackできない

久々のブログになってしまったので時間をつくり、文章を書く時間をつくりたいと思っているこの頃です。 <前段> railsで別のブランチからmasterに変更してDBを反映させるために一回DBをrollbackを行ってmigrateし直しました。 そのあと再度作業していたブラン…

【rails】画像投稿するgem「carrierwave」「mini_magick」の設定について

画像投稿するgem「carrierwave」「mini_magick」についての事前設定について備忘録として残します。 1.gemfileに記載してbundle installを実施 2.以下のコマンドで画像を投稿するた目のuploaderをインストールする rails g uploader image ※imageはuploader…

【rails】エラー対処:undefined method `map' for "translation missing: ja.date.order":String

以下のようなエラーが出て、対処したので備忘録で残します。 エラーにある通り、form_forで生年月日を入力するセレクトボックスを実装している箇所でエラーが出ている。 エラー内容としては翻訳するファイルがないという感じでのエラーです。 対処としては簡…

【rails】migrationファイルの削除方法

migrationファイルを削除する時って、削除するコマンドってあったかなと考えることがあったので備忘録として残します。 方法としては本当に単純です。 まずは該当のmigrationファイルがdown状態になっているか確認する rails db:migrate:status database: Fr…

【rails】画像の表示方法について(image_tagについて)

久しぶりの更新になってしまいました。 今日はrailsでの画像を挿入するimage_tagについてです 結論から今までhamlで記載していたコードと、image_tagを以下に記載します。 ※指定している画像は/app/assets/images配下に配置してます。 #以前から記載していた…

【rails】htmlからhamlに一括で変換するコマンド

sassの学習でhtmlファイルを他からコピーしたが、そのhtmlファイルをhamlの記述に一括で変更したい時に実行するコマンドを備忘録で残します。 結論から言うとターミナルで以下のコマンドを実行するのみです。 ※rails-hamlをbundle installしていることが前提…

【rails】bootstrap-sassの導入について

ruby on railsでbootstrapを導入して見たので、方法について記録しておく。 まずbootstarpとはtwitter社が開発したcssのフレームワークのことである。 よく使われるcssのコードがまとめられており、使用者はコードを書かなくてもほぼ自動的に画面の分割など…

【rails】deviseの導入について(1.導入まで)

本日は現在自作しているアプリにユーザ管理機能をつけたいと考え、deviseというgemを使用しました。 導入時に手間取ったので備忘録として残します。 1.まずは以下の通りdeviseをインストールする。 #Gemfileに以下を記載 gem 'devise' #bundle installを実行…

【rails】viewにモデルのデータが表示される?

今日はこのエラーの解決に数時間彷徨い続けたので、備忘録として残します。 実際の画面は以下の通りです。 viewがおかしいのかと思い、application.html.erbやindexのviewを確認してましたが特に文法等の間違いはなかったです。 しかしwebで検索していたとこ…

【rails】simple_formについて

現在youtubeの動画でプログラミングを学習していますが、新たに学習したgemがあったので備忘録として記載します。 今回学んだgemが「simple_form」というものです。 その名の通りですね。入力フォームを簡単に実装できるgemです。 使用するためには他のgemと…

【rails】jqueryを使えるようにするためには

Ruby on Railsでアプリを作成中ですが、その中で非同期通信を実装するために jqueryをしようとするとなぜか使えない。調べると使えるように設定しないといけないとがわかりました。 今後のために記載しておきます。 1.gemをインストールする まずgemが必要な…

【rails】確認ダイアログを表示させる方法

railsでアプリ作成時に学んだ内容を記載します。 今回は削除する際に以下のようなダイアログを表示させる方法です。 機能的にも誤って削除するのを防ぐので実用的だと思います。 実際のコードを見てみます。 <%= link_to 'Dlete', todolist_path(@todolist),…

【rails】テーブルへのカラム追加方法

すでにマイグレーションしているテーブルに対してカラムを追加したい場合の対応を備忘録で残します。 基礎的な内容ですが、対応実施時にどうだったか忘れてました。 例:todo_itemsテーブルに「completed_at」カラムをdatetime型で追加 rails g migration ad…

【rails】ActiveRecordについて

今回はActiveRecordについて少し学習します。 railsはデフォルトでインストールされており、SQL文を使わなくてもDBの読み書きを行えることができます。 その機能を果たす役割をしているのがActiveRecordになります。 「rails g model tweet」のコマンドを使…

【rails】database.ymlについて

アプリケーション作成時に自動的に作成されているこの掲載のファイルですが 何のファイルか問われた際に説明できなかったので備忘録として記載しておきます。 簡単にいうと調べた内容をまとめると ・rails db:createで作成されたデータベースの名称やデータ…

【rails】stylesheetの設定について

railsを使う上で基本的な事柄だが備忘録として記載しておきます。 通常HTMLにCSSを使用する際は htmlのタブにて以下の記載をする。 ※直接HTMLファイルに記載することもできるが、可読性を上げるために通常はcssファイルを別につくり それを読み込んで使用す…

【rails】バリデーションについて

バリデーションとはDBにデータを登録する場合にデータの整合性をチェックする機能のことです。 例えばデータを空で登録するのを防いだり文字数を制限したりすることができます。 バリデーションは種類がたくさんあるが、今日アプリ制作を行っている最中で使…