2021-01-01から1年間の記事一覧

Rails sorcery

やりたいこと sorceryについて理解を深めたかったので、GitHubを参照し、Wiki等に記載されている内容をまとめます。 実装方法については深く解説していないで、詳しく知りたい方はsorceryのGitHubを参照してください Userモデルを作成する bundle exec rails…

Ruby クラスを使う場合と使わない場合の比較

やりたいこと Rubyでプログラムを作成していた時、クラスを使うメリットを発見したので記載します。 クラスを使わないで実装 users = [] users << { first_name: 'コナン', last_name: '江戸川' } users << { first_name: '哀', last_name: '灰原' } def ful…

URL.createObjectURL() オブジェクトURLを用いた画像アップロードのプレビュー画面

やりたいこと RailsのActiveStorageを使って画像をアップロードしているが、画像を添付した時に添付した画像をプレビュー表示したかったのでJavascriptを用いて実装した。この時使用したURL.createObjectURL()について理解できていなかったので勉強のためア…

ajax通信

やりたいこと ajaxの理解 ajaxとは javascriptでサーバー側と非同期通信を行う手法のこと 同期通信と非同期通信について 同期通信 ① webブラウザのあるページのリンクをクリックして、別のページに遷移する。その時にWebサーバーにリクエストを送る。 ② HTML…

rails newでアプリを立ち上げるまで postgresql

やりたいこと rails newしてアプリを作成していきたいが、様々なエラーに出くわしたので改善していきます。DBはpostgresqlを使用します。 エラー内容 エラー1 % rails _6.0.4_ new calender --database=postgresql --skip-test 2: from /Users/urakamitakuy…

linux 標準入出力 リダイレクト

標準入出力 標準入出力は以下の3つに分けられる。 入力:コマンドを打つ際、キーボードを使って入力する。キーボードを使ってコンピュータにデータを渡すこと。 出力:catなどのコマンド入力すると結果が画面に出てくる。このようにコマンドの結果やプログラ…

Linuxコマンド rm mv cp

rmコマンド ファイルやディレクトリを削除 ファイルの確認。dirディレクトリの中にfileというファイルがあります。 [work] $ ls dir [work] $ ls dir file dirをrmコマンドで削除しようとするとディレクトリなので削除できないと表示されます。rmはこのよう…

ブラウザで画像をリサイズしアップロード Rails canvas

やりたいこと コンビニ食品の組み合わせ作成し成分表示するポートフォリオを作成しています。 携帯で撮った画像を添付しアップロードしたいのですが、携帯で撮った画像は容量がとても多くサーバーにかなり負担をかけてしまいます。 そこでブラウザで画像表示…

git 基本的なコマンド3 fetch, pull

git

git fetch git mergeリモートから取得 git fetch <リモート名>と入力すると、リモートリポジトリからローカルリポジトリに情報を落とすことができます。ここで注意したいのが、自分のワークツリー(手元の作業場)には情報は反映されません。 じゃあ自分の手…

git 基本的なコマンド3 fetch, pull

git

git fetch git mergeリモートから取得 git fetch <リモート名>と入力すると、リモートリポジトリからローカルリポジトリに情報を落とすことができます。ここで注意したいのが、自分のワークツリー(手元の作業場)には情報は反映されません。 じゃあ自分の手…

gitの基本コマンド2 checkout, -- reset, commi --amend

git

ファイルの変更を取り消すgit checkout -- index.htmlに以下を追加 <p>この素晴らしい世界に祝福を!</p> git statusで変更を確認すると変更部分が確認できます。 $ git status On branch main Your branch is up to date with 'origin/main'. Changes not staged f…

gitのコマンド確認 init status diff log

git

git init まずはgit initコマンドを実行。空のgitリポジトリが作成されます。 % git init 中身を確認してみると、.gitという隠れフォルダが作成されています。 % ls -a . .. .git .gitファイルの中身を見てみると % ls .git/ HEAD config description hooks …

Rails セレクトボックス

やりたいこと railsにてセレクトボックス 機能をつけたい。セレクトボックスの内容はenumの値を表示。 調査 railsdoc.com 実装 main.rb enum stores: { seven: 0, lawson: 1, family: 2 }, _prefix: true enumの値はセブン-イレブン、Lawson、FamilyMartとし…

renderとredirect_to

やりたいこと renderとredirect_toについて理解したい。 Controller controller def new @board = Board.new end def create @board = Board.new(board_params) respond_to do |format| if @board.save format.html { redirect_to @board, notice: 'Success'…

Herokuデプロイ時のエラー enum

やりたいこと Herokuにデプロイした後、ページを開く事ができなかったのでheroku logs --taillで確認したところ以下のエラーが発生していた。このエラーを解消したい。 ActionView::Template::Error (undefined method `humanize' for 0:Integer): <p>店舗名:<</p>…

Activestorage Attachment validatesのエラー

やりたいこと new画面でActivestorage Attachmentを使いファイルを添付した。その時に以下のgemをinstallし拡張ファイルにvalidatesを実装したい。 gem 'active_storage_validations' main.rbに以下を記載したところエラーが発生。 main.rb has_one_attached…

chartkick SQLの連続表示を阻止

やりたいこと food_combinationという中間テーブルから、mainテーブルのnameとsugarをグラフとして表示させたい。 schema.rb create_table "mains", options: "ENGINE=InnoDB DEFAULT CHARSET=utf8mb4", force: :cascade do |t| t.string "name" t.string "i…

Herokuデプロイ時のエラー

やりたいこと Herokuデプロイ時にエラーが現れたので現れたので解消したい。 remote: ! remote: ! Precompiling assets failed. remote: ! remote: ! Push rejected, failed to compile Ruby app. remote: remote: ! Push failed remote: Verifying deploy..…

ゲストログイン機能をつける

やりたいこと ポートフォリオ作成中なのですが、ユーザーさんに気軽に使って頂くためゲストログイン機能をつけたい。 ちなみログイン認証はsorceryで行っています。 調査 rails ゲストログイン機能と検索 qiita.com blog.aiandrox.com 調査した結果、sorcery…

削除したファイルを復元する

やりたいこと rm -rf binコマンドでbin以下のファイルを削除してしまったので復元したい。 調査 削除したファイル 復元で検索 creat4869.hatenablog.com 実行したこと とりあえずgit pushてgithubにデプロイしました。 ターミナル上で以下のコマンドを打つこ…

chartkick heroku環境でchartkick.rbの編集内容が反映されない

やりたいこと 開発環境では、chartkick.rbで編集したグラフが表示されているが 本番環境ではデフォルトの状態で表示された。 本番環境でも開発環境と同様のグラフを表示させたい。 調査 chartkick.rb herokuで検索 qiita.com 原因 gem 'chartkick.rb'をイン…

RSpecでログイン状態にする方法

やりたいこと rspecでログイン状態のヘッダー内容をテストしたい RSpec.describe '共通系', type: :system do let(:user) { create(:user) } describe 'ヘッダーの表示' do context 'ログイン前' do before { visit root_path } describe 'ヘッダー' do it '…

rspec実行時 OpenSSL::SSL::SSLError: SSL_connect returned=1 errno=0 state=error: certificate verify failed (unable to get local issuer certificate)

やりたいこと bundle exec rspec テストを正常に走らせたい。 エラー内容 OpenSSL::SSL::SSLError: SSL_connect returned=1 errno=0 state=error: certificate verify failed (unable to get local issuer certificate) OpenSSL::SSL::SSLErrorが発生し、bun…

エラーメッセージの個別表示

やりたいこと form個々にバリデーションのエラーメッセージを表示する 調査内容 techtechmedia.com blog.yuhiisk.com 実装 _error_messages.html.erb <% if object.errors.any? %> <div id="error_messages" class="alert-message"> <ul class="mb-0"> <% object.errors.full_messages_for(text).each do |msg| %> <li><%= msg %></li> </ul></div>…

bucket.rb:885:in `extract_name': Cannot load `Rails.config.active_storage.service`: (ArgumentError) missing required option :name

herokuにデプロイしたいけどエラーが発生 やりたいこと git push heroku main heroku open でherokuにデプロイしたい。 エラー内容 heroku run rails c エラー原因を調べると bucket.rb:885:in `extract_name': Cannot load `Rails.config.active_storage.se…

railsにjavascriptを読み込ませるときのエラー webpack

erbファイルにjavascriptを読み込ませたら以下のエラーが発生 <%= javascript_pack_tag 'home/select' %> 解決方法 bin/yarnを実行 yarn install v1.22.10 warning package-lock.json found. Your project contains lock files generated by tools other tha…

railsにvue.jsをインストールしたときのエラー

rails webpacker:install:vue railsにwebpackerを使って導入する。 app.vue <template> <div id="app"> <p>{{ message }}</p> </div> </template> <script> export default { data: function () { return { message: "Hello Vue!" } } } </script> <style scoped> p { font-size: 2em; text-align: center; } </style> app.vueを layou…

My SQL rootユーザのパスワードを再設定

パスワードなしでログイン mysql -u root 使うデータベースを標準のmysqlのものに変更します mysql> use mysql Database changed パスワードを再設定する mysql> UPDATE user SET authentication_string=password('新規パスワード') WHERE user='root'; Quer…

mysqlのエラー ERROR! The server quit without updating PID file

mysql.server startを入力した時、ERROR! The server quit without updating PID fileというエラーが発生した。 試したこと 以下の記事に書かれていることを試しました。 mysql 起動時のThe server quit without updating PID file エラーの回避法 - Qiita t…

gem 'fast_jsonapi'

fast_jsonapiとは Netflixが提供しているgemで、JSONのserializerです。jsonのserializerとは、jsonを生成する仕組みのことです。 シリアライズ(serialize)とは、プログラミングでオプジェクト化されたデータを、ファイルやストレージに保存したり、ネット…