オリジナルアプリ作成中に新たに学んだことがあったため残します。 実装したい内容目標設定を行い、トップページで目標を表示する 目標設定機能を実装中に気付いたのですが、、、目標設定を複数登録した場合 に全て表示されては困る。 目標達成したら次の目標を設定したいので、都度更新されるイメージ。 ではこれをどうしたら表示できるのか。 実装方法コントローラーで最新レコードを表示する方法があった! 省略 def index @target = current_user.ta
学んだことを忘れないようにまとめる。 ▶️雛形 def specific_url?(url)# 【ここに処理を記述】endurl = "https://hoge.com/123/index.html"puts specific_url?(url) ▶️解答 def specific_url?(url) if url.match(/\Ahttps:\/\/hoge.com\/\d{1,3}\/index.html\z/)!= nil return True e
学んだことを忘れないようにまとめます。 ▶️雛形 def hide_the_number(number) # 【ここに処理を記述】endcard_number = "1234-5678-9012-3456"puts hide_the_number(card_number) ▶️答えから記述するとこちら def hide_the_number(number) number.sub(/^(\d{4}-\d{4}-\d{4})-(\d{2})/, '****-****-
誤ってマイグレーションファイルを作成してしまい 調べた内容と結果を報告します! ▶️今のマイグレーションファイルの状態確認 削除できるかどうかをまず確認するため bundle exec rake db:migrate:status 入力すると、以下の結果が出ました。 Status Migration ID Migration Name-------------------------------------------------- up 2
モデルの単体テストコードを実装中に、テスト内容の途中からエラーが発生 OrderAddress 商品購入 商品購入できる場合 すべての値が正しく入力されていれば保存できる building_nameは空でも保存できる 商品購入できない場合 post_codeが空だと保存できない post_codeが半角でないと保存できない post_codeが半角ハイフンなしでは保存できない (FAILED - 1)
コントローラーでfindメソッドを使った同じコードが複数回出てきた場合、可読性の向上と保守(修正作業)が発生した際に手を加えやすくするため まとめる必要がある! 変更前 class ItemsController < ApplicationController before_action :authenticate_user!, only: [:new, :edit, :update] def index @items = Item.all.order("cr
💡authenticate_user!メソッド ログイン状態によって表示するページを切り替えられるdeviseのメソッド 処理が呼ばれた段階で、ユーザーがログインしていなければそのユーザーをログイン画面に遷移させる before_actionで呼び出すことで、アクションを実行する前にログインしていなければログインに遷移させられる ▶️指定したアクションだけ実行する場合 app/controllers/teets_controller.rb class Applicat
なぜかこのメソッドの存在を忘れるんです、、自身の備忘録として残します。 💡current_userメソッドとは ・Gemのdeviseを導入していると使用できるメソッド ・現在ログインしているユーザーの情報が取得できる 本日記述した内容は、 「ログインしているユーザーと商品登録したユーザーが同じ」という条件分岐 <% if current_user.id == @item.user_id %> 最初はあってるはずなのに、エラーが出て 何でかな、と思ったらcurrent
何らかのと保存したデータを表示する際に、表示順を変えたい場合 情報を取得するタイミングで並べ替える! 例)投稿したitemを並び替える場合 class ItemsController < ApplicationController before_action :authenticate_user!, only: [:new] def index @items = Item.all.order("created_at DESC") end 使用するのは、ord
Active Hashとは、 都道府県名一覧やカテゴリーなどの「変更されないデータ」をデータベースに保存せずにデータを取り扱うことのできるGemのこと。 詳細ドキュメント:https://github.com/active-hash/active_hash 導入方法・Gemfileを修正 末尾に以下のコードを追加 Gemfile 中略gem 'active_hash' →bundle installを実施 ・モデルを作成(例として都道府県を使用) ※作成したいカ
エラー発生箇所 チャットルーム作成時、作成ボタンを押したタイミング エラー内容 Argumentとは、「引数」という意味 ArgumentErrorは「引数のエラー」ということ。 そして、ヒントが2個記載されている。 ①roomsコントローラーのcreateアクションで起きてるよ ②引数1個を期待していたけど、2個あるよ ということ。 つまり、 「roomsコントローラーのcreateアクションで引数のエラーが起きている。 具体的には、引数の数が間違っていて、与えら
起きたこと ユーザー管理機能を実装するにあたり、ログイン画面で全ての項目を入力しても登録できず、ログイン画面のままになってしまう エラー内容 ローカル環境ではエラー表示はされず、ターミナルで以下の表記 Started POST "/users" for ::1 at 2024-05-16 21:01:48 +0900Processing by Devise::RegistrationsController#create as TURBO_STREAM Paramet
①エラー内容が何かを考える Routing Errorが出た時は 受け取ったURLとコントローラ内アクションが対応関係にない ことが考えられる。 つまり、ルーティングを設定しているroutes.rbを確認する必要がある。 routes.rbの役割は、「どのHTTPメソッドでどのパスを受け取った時に、どのコントローラーでどのアクションを動かすかを設定する」こと。 つまり、どの部分で問題が起きているかを考える。 ②何をした時にエラーが出たのかを把握するどのページにアクセスし