- 1. cannot load such file — sasscエラーについて
- 2. accepts_nested_attributes_for を使ったフォームで意図しないユニークバリデーションの発生を回避する方法
- 3. 開発勉強(controller)
- 4. herokuでsecret_keyを使う
- 5. 【M1Mac】【Docker】環境構築で nokogiri のエラー対処方法
- 6. 【完全攻略】Ruby on Rails ***NO FILE*** が出てマイグレーションできない時の対処法
- 7. コンテナ用語についてまとめてみた
- 8. 【超簡単】Ruby on Rails に BootStrapを導入する方法
- 9. content_forメソッドでタイトルを動的に出力する
- 10. Rspecにおける画像検証の方法
- 11. Rspecを書くときに注意していること
- 12. rails5 progate 整理メモ
- 13. 【Rails7+スクレイピング+LINE】Qiitaの週間トレンド記事一覧に新しくランクインした記事達をLINEで通知したい
- 14. [Rails] [haml] link_toに文字とfontawesome両方を使って表示させる
- 15. action textで画像が表示されない
- 16. Docker上のRailsでbin/rails tailwindcss:watchが効かない場合の対処方法
- 17. rails5 progate 整理メモ
- 18. Action Cableで作ったリアルタイムチャットをECS(Fargate)上で動作させる
- 19. Notification API 通知サブスクリプション登録方法
- 20. Decoratorをrailsに導入する
cannot load such file — sasscエラーについて
本日も頑張っていきましょう。宜しくお願いします。
こんなエラーが出ました。
どうやらこれはRails7以降で起きるエラーのようです。
従来通りにCSSを呼び出すとこのエラーが発生するようです。以下対応をすると解決できるようなので試してみます。
“`gemfile.qiita.rb
# gem “sassc-rails”
“`この、コメントアウト(#)を削除して、ターミナル上で
「bundle install」を実行してみます。無事、エラーが解消されました!
accepts_nested_attributes_for を使ったフォームで意図しないユニークバリデーションの発生を回避する方法
## 解決したい問題
Railsでは `accepts_nested_attributes_for` を使って、`has_many`関連する子レコードを1つのフォームで更新することができます。
イメージとしてはこんな感じです。
上の画面では以下のようなBookモデルと、それに関連するAuthorモデルを更新するフォームです。
(本と著者はmany-to-many関連だろう、というツッコミが来そうですが、説明のために単純化してるので気にしないでください)“`ruby
class Book < ApplicationRecord has_many :authors, dependent: :destroy accepts_nested_attributes_for :authors, reject_if: :all_bl
開発勉強(controller)
今回も頑張っていきましょう。
今日は、前回なんとかサーバーの立ち上げまでできたので、実際に開発に向けて勉強していきます。
⭐️ MVC
・Railsは「MVC」というアーキテクチャーを使ったフレームワーク
・MVCというのは、「Model」「View」「Controller」の略
・この3つの中で最も重要なのは「Controller」
⭐️ コントローラーを作成する
ターミナル上で前回作成したRailsAppへ移動し、以下コマンドを実行する
“`ruby:qiita.rb
rails g controller 名前
“`
※名前は半角英字とすること
“`ruby:qiita.rb
create app/controllers/hello_controller.rb
invoke erb
create app/views/hello
invoke test_unit
create test/controllers/hello_controller_test.rb
herokuでsecret_keyを使う
## はじめに
アプリをherokuにデプロイし、ログイン機能を使用しようとしたところ、このようなエラーが出ましたJWT::DecodeError (No verification key available)
この解決方法を共有いたします。
## 結論
herokuにマスターキーを登録するのを忘れてたので、追加しました。heroku config:set RAILS_MASTER_KEY=`cat config/master.key`
### 発生状況
ログイン認証でJWTを使って、デコードする際に、`Rails.application.credentials.secret_key_base`を使っています。
この値がnilとなっており、エラーが発生しておりました。def decode(token)
JWT.decode token, Rails.application.credentials.secret_key_base
endそもそもこれは、credentials.yml(公開鍵)の値をmaster.key(秘密
【M1Mac】【Docker】環境構築で nokogiri のエラー対処方法
## はじめに
未経験からエンジニアに転職しました。
まだまだわからないことだらけですが、毎日楽しく働いています!
業務や個人開発での発見やエラー解決などをアウトプットしています。
今回は、
M1 Macの環境構築で遭遇したエラーの解決方法です。
Docker Rails 環境を想定しています。# エラー内容
~~~
Caused by:
LoadError: Error loading shared library ld-linux-aarch64.so.1: No such file or directory (needed by /usr/local/bundle/gems/nokogiri-1.13.3-aarch64-linux/lib/nokogiri/2.6/nokogiri.so) – /usr/local/bundle/gems/nokogiri-1.13.3-aarch64-linux/lib/nokogiri/2.6/nokogiri.so
~~~~~~
rake aborted!
LoadError: cannot load such file —
【完全攻略】Ruby on Rails ***NO FILE*** が出てマイグレーションできない時の対処法
# はじめに
筆者は [大学生限定 プログラミングコミュニティ 『GeekSalon』](https://geek-salon.com/?utm_source=Direct&utm_medium=attract&utm_campaign=2Q&utm_content=Fukuoka_E_2Q)で活動している者です!# エラー
さぁ実装したものを確認してみよう!とrails sをしたところこのような画面が、、、

しめしめ、これはマイグレーションができていないがゆえのエラーだなと思い以下を実行!
“`console:
$ rails db:migrate
“`
しかし、このコマンドがうまく実行できず、、、
マイグレーションファイルの状態を確認するために、以下を実行
“`console:
$ rails db:migr
コンテナ用語についてまとめてみた
# コンテナ用語
## コンテナ
– OSとカーネルは共有し、プロセスを分離する仕組み。
– コンテナ上で実行されたソフトウェアは単に1つのプロセスとして稼働しているにも関わらず、コンテナ内のソフトウェアから見ると独立したOS環境を占有しているように見える。### コンテナ vs サーバー仮想化
– サーバー仮想化は複数のOSを同一のハードウェア上で実行する仕組み。
– 「仮想マシン」上に「ゲストOS」を動作させる。
– 例: Virtual box[サーバー仮想化技術の基礎 – Qiita](https://qiita.com/NagaokaKenichi/items/123c54f3863816481bd7)
[各仮想化技術の違いをざっと理解するッ!! – Qiita](https://qiita.com/hiroki-it/items/0cea21a83394634d284a)
[[Cloud] 仮想化技術について](https://qiita.com/okkn/items/c0cb6feef4058e9d16b4)### コンテナのメリット
【超簡単】Ruby on Rails に BootStrapを導入する方法
# はじめに
筆者は [大学生限定 プログラミングコミュニティ 『GeekSalon』](https://geek-salon.com/?utm_source=Direct&utm_medium=attract&utm_campaign=2Q&utm_content=Fukuoka_E_2Q)で活動している者です!# Bootstrapとは
世界で一番人気のあるフロントエンドライブラリです。
モバイルファーストなレスポンシブウェブを素早くデザイン・カスタマイズすることが可能です。
豊富なコンポーネント、強力なJavaScriptプラグインを備えています。
詳しくは、[Bootstrap公式サイト](https://getbootstrap.jp/) を!!
## Ruby on Rails への導入方法
①まずは[Bootstrap公式サイト](https://getbootstrap.jp/)へアクセス!
②サイト内のはじめるボタンをクリック!
File.new(“#{Rails.root}/画像のパス)でデータを登録する
“`ruby
let!(:user) { create(:user, name: ‘user_1’, image: File.new(“#{Rails.root}/spec/factories/image_1.jpg”)) }
“`## フォームに画像を入力する
“attach_file”を使い画像登録の状況を再現する。name属性、ファイルのパス(上の例と同じディレクトリにあるファイルを指定している)を指定することで画像の投稿を再現することができる
“`ruby
attach_file ‘フォームのname属性’, “#{Rails.root}/spec/factories
Rspecを書くときに注意していること
Rspecを書くときの自分なりの決まり事、というかこうした方が読みやすくなるんではなかろうかということをメモがわりに書いてく。これからもちょいちょい足していく & これ違うなと思う部分は修正していく。
## 戻り値を明確にする
“`ruby
let!(:hoge) do
huga = create(:hoge, name: ‘name’, user: user)
hoge.update(updated_at: Date.new(2018, 7, 1))
hoge # 戻り値
end
“`最後のhogeがなく、hoge.updateで終わってしまうと戻り値が何なのかが判断しづらいので「hoge」を最後に記述し戻り値を明確にする
## 凡庸的なクラス属性を指定するときは「within(’.someClass’) do」を使い対象を絞る
“`ruby
page.all(‘.btn’)[1].click
# 対象が広すぎるのでページに新いbtnクラスが追加されたときにテストが通らなくなる恐れがあるwithin(page.all(‘.shops’)[1]) {
rails5 progate 整理メモ
# ログイン失敗時のメッセージを表示させる
送信されたパラメータにあうユーザーがない場合にメッセージを表示させる。
その時にお題のメッセージを表示させる
## どうやってエラーメッセージを表示させるのか忘れた。
ちょっと答えを見た。
“`users_controller.rb
def login
.
.
.
else
@error_messeage = “メールアドレスまたはパスワードが間違っています”
render(“login”)
end
end
“`
loginページに行く前にインスタンス変数に代入しておく。そうすることで中身を入れることができる。
“`rb
<% if @error_messeage %>
“`
@error_messeageに中身があれば表示されるようにする。“`login.html
<% if @error_messeage%>関連する記事
OTHERカテゴリの最新記事
- 2023.09.29
iOS関連のことを調べてみた2023年09月29日
- 2023.09.29
Ruby関連のことを調べてみた2023年09月29日
- 2023.09.29
Python関連のことを調べてみた2023年09月29日
- 2023.09.29
Rails関連のことを調べてみた2023年09月29日
- 2023.09.29
Python3関連のことを調べてみた2023年09月29日
- 2023.09.29
PHP関連のことを調べてみた2023年09月29日