- 0.0.1. ActionDispatch::Request::Session::DisabledSessionError: Your application has sessions disabled. To write to the session you must first configure a session storeが発生した時の対処法
- 0.0.2. ruby 練習問題44 (アウトプット用)
- 0.0.3. 【Ruby】モジュールの名前空間を深掘りするースコープとグローバル名前空間ー
- 0.0.4. 引数のデフォルト値について(Ruby)
- 0.0.5. Rails データベース作成 モデルの基本操作
- 1. この記事でわかること
- 2. モデルを作成する
- 3. User Name: Foo
- 3.0.1. Google Analytics 4 のイベントをサーバー側から送信する方法を調べてみた
- 3.0.2. Module#concerningとは
- 3.0.3. サンプルコードでわかる!Ruby 3.2の主な新機能と変更点
- 3.0.4. Map・ハッシュ操作 【Java】【Kotlin】【Ruby】
- 3.0.5. JITコンパイルをサポートした新たなRuby処理系をRustとアセンブリで書いている話
- 3.0.6. selfの使い方
- 3.0.7. LINEWORKSの特定ルームにメッセージを送る方法(API 2.0対応のRuby版)
- 3.0.8. 【Rails】コメント削除ボタンをコメントしたユーザーのみ表示させるには。
- 3.0.9. GitLab開発依存ライブラリからthin gemを排除した
- 3.0.10. 【Rsepc】実行時間が長いテストを抽出する
- 3.0.11. URLからOGPを取得してDBに保存する
- 3.0.12. JavaエンジニアがRubyを使ってみて思ったこと
- 3.0.13. Railsで日時比較をする際に型が違って焦った話
- 3.0.14. カスタムマッチャーをカジュアルに書こう
ActionDispatch::Request::Session::DisabledSessionError: Your application has sessions disabled. To write to the session you must first configure a session storeが発生した時の対処法
# 概要
– ruby 3.1.2
– rails 7.0.4
– railsはAPIモードで利用
# 結論
config/application.rbに以下の3行を追記すれば解決する。
“`config/applicaton.rb
config.session_store :cookie_store, key: ‘_interslice_session’
config.middleware.use ActionDispatch::Cookies
config.middleware.use config.session_store, config.session_options
“`
参考になれば幸いです。
# 参考文献
– [Rails 7.0.1 with disabled Sessionstore ctionDispatch::Request::Session::DisabledSessionError (Your application has sessions disabled. To write to the session you must first configu
ruby 練習問題44 (アウトプット用)
times文を使って、以下のようにターミナルに出力されるプログラムを書く問題。
“`
1回目の繰り返し
2回目の繰り返し
3回目の繰り返し
4回目の繰り返し
5回目の繰り返し
6回目の繰り返し
7回目の繰り返し
8回目の繰り返し
9回目の繰り返し
10回目の繰り返し
“`
以下、模範解答
“`ruby
10.times do |i|
puts “#{i + 1}回目の繰り返し
end
“`
以下、解説
times文を使い、puts “○回目の繰り返し”という処理を繰り返し行う。
今回は○回目の○の部分に数字を1ずつ足していかなければいけないので変数を使用する。(今回は変数iとする。)
プログラムなので、1回目の繰り返しではiは0になるので(i + 1)回目の繰り返しとすれば1となる。
【Ruby】モジュールの名前空間を深掘りするースコープとグローバル名前空間ー
Moduleの名前空間について簡単にまとめます。
書籍中心に勉強していますので、ご指摘あればコメントお願いいたします。# 名前空間とは
Moduleを使用して、クラスなどの定義した定数が一意になるようにするための手段です。開発を進めていくと、他のファイルにあるクラス名を重複するなどの問題が起こる。これを解決する手段として用いられます。
# 定義の仕方
定義したクラス名にmoduleをネストして使用します。
“`ruby
module Bar
class Foo
def say
“hello”
end
end
endfoo = Bar::Foo.new
foo.say #=> “hello”
“`
呼び出す場合は`モジュール名::クラス名`の形を取ります。
ここで、インスタンスを作るときに、`Foo.new`だけの形で定義するとエラーが出力されるので注意しましょう。# 使用する場面
名前空間を使用する時はプロジェクトのディレクトリ構造に名前空間を合わせます。
上のクラスはBarディレクトリ
引数のデフォルト値について(Ruby)
1、メソッド定義のところで、引数にデフォルト値を指定できる。引数の呼び出しで、引数を省略した場合、デフォルト値が適用される。
“`
def introduce(name = “山田”) # 山田がデフォルト値
puts “私は#{name}です。”
endintroduce(“島田”)
introduce()
“`
出力結果
“`
私は島田です。
私は山田です。
“`
2、引数呼び出して、末尾がハッシュの場合、波カッコ{ }を省略可能。“`
def introduce(name = “山田”, msg)
puts “私は#{name}です。”
puts “#{msg[:target]}、#{msg[:greeting]}。”
end
introduce(“島田”, {target: “世界の皆さん”, greeting: “こんにちは”})# { }を省略している
introduce(“島田”, target: “世界の皆さん”, greeting: “こんにちは”)# デフォルトの値(“山田”)で出力するのでn
Rails データベース作成 モデルの基本操作
この記事でわかること
・Railsモデルの基本操作について。
モデルを作成する
まずは、モデルを以下のコマンドで作成します。
“`Bash:console
rails generate model<データ名:データ型> <データ名:データ型>
rails generate model User name:string email:string
“`すると以下のようなコードが表示されます。
“`Bash:console
invoke active_record
create db/migrate/20221226012605_create_users.rb
create app/models/user.rb
invoke test_unit
create test/models/user_test.rb
create test/fixtures
[続] Rails Consoleなど任意の場所、Inlineで任意のViewを任意条件でRenderする
# TL;DR
“`ruby
ac = ApplicationController.new
ac.instance_variable_set(:@user, User.find(42)) # インスタンス変数をインジェクション
ac.render_to_string ‘users/show’, # レンダリングしたいテンプレート
layout: false, # `layout: false`がないとエラー
locals: { params: {} } # ローカル変数が使われる際、セットが必要=> “\n\n
\n\nUser ID: 42 \n\n\n\nUser Name: Foo
\n\n\n”
“`# 本文
去年はとある問題を解決するために、**[「Rails
Google Analytics 4 のイベントをサーバー側から送信する方法を調べてみた
## はじめに
Google Analytics 4 のページビューやイベントを仕込む際は、クライアント側(View)に仕込むのが多いとは思いますが、サーバー側からイベントを送る必要が出てきたため、その方法についてまとめています。
※「Ruby on Rails」の環境で調査していたので、言語はRubyにて試しています。
## プロパティおよびデータストリームを準備する
こちらに関しましては、細かく説明してしまうと長くなってしまうので、公式のドキュメントへの参照のみとします。
(検索で色々とわかりやすい記事が出てくると思います)– プロパティ設定
– https://support.google.com/analytics/answer/9304153?hl=ja&ref_topic=9303319
– データストリームに関しては、今回はウェブで進めていきます。## 測定IDを確認する
先ほど作成したデータストリームから測定IDが確認できるので、そちらを保存しておきます。
– テータストリーム画面から作成した項目を押下します
Module#concerningとは
## はじめに
[Ateam Group U-30 Advent Calendar 2022](https://qiita.com/advent-calendar/2022/ateam-group-u30)の18日目は、 @mayobimu が担当します!https://qiita.com/advent-calendar/2022/ateam-group-u30
## Module#concerningとは
Rails 4.1.0で追加された機能
Rails 4.0で追加されたActiveSupport::Concernをより使い方の幅を広めることができる## 何が変わったの?
### ActiveSupport::Concernの場合– `app/models/concerns/`or`app/controllers/concerns/`からincludeする必要がある
https://qiita.com/mayobimu/items/e05a8f9d496200a0c3ec
### Module#concerningの場合
– 同じmodelsファイルから
サンプルコードでわかる!Ruby 3.2の主な新機能と変更点
## はじめに
Rubyは毎年12月25日にアップデートされます。
Ruby 3.2は2022年12月25日に3.2.0が正式リリースされました。https://www.ruby-lang.org/ja/news/2022/12/25/ruby-3-2-0-released/
この記事ではRuby 3.2で導入される変更点や新機能について、サンプルコード付きでできるだけわかりやすく紹介していきます。
ただし、すべての変更点を網羅しているわけではありません。個人的に「Railsアプリケーションの開発時に役立ちそうだな」と思った内容をピックアップしています。本記事で紹介していない変更点も多数ありますので、以下のような情報源もぜひチェックしてみてください。
https://www.ruby-lang.org/ja/news/2022/12/25/ruby-3-2-0-released/
https://techlife.cookpad.com/entry/2022/12/26/121950
https://qiita.com/advent-calendar/2022/ruby
Map・ハッシュ操作 【Java】【Kotlin】【Ruby】
# 概要
自主学習のアウトプットです。現場でJavaのMapを操作していた時に、自分の書いたコードがまわりくどいやり方かなと思って調べたらいい方法を見つけたので備忘録です。(実際は周辺のコードと合わなくて使えませんでしたが。。)
学習中のKotlinとRubyで同じことするには?と調べたものも共有します。
# まわりくどいやり方
コードを書いてふと思いました。「なんやこれ、まわりくど」
思わず声に出てしまったコードがこちら
“`Java:Java
Mappokemons = new HashMap ();
pokemons.put(“Pikachu”, “ピカチュウ”);
pokemons.put(“Lapras”, “ラプラス”);
pokemons.put(“Snorlax”, “カビゴン”);
pokemons.put(“Venusaur”, “フシギバナ”);
pokemons.put(“Charizard”, “リザードン”);
pokemons.put(“Blastoise”, “カメックス”
JITコンパイルをサポートした新たなRuby処理系をRustとアセンブリで書いている話
この記事は[言語実装 Advent Calendar 2022](https://qiita.com/advent-calendar/2022/lang_dev) の24日目の記事です。
## はじめに
monochromeです。今回はmonorubyという名前の高速なRuby処理系の紹介をします。
ここ何年か、わたしはruruby[^ruruby]というRubyのインタプリタをRustで書いていて、Advent Calendarでもいくつか紹介記事を書きました。
[^ruruby]:https://github.com/sisshiki1969/ruruby
– [Rustでつくる(つくれるかもしれない)Ruby](https://qiita.com/sisshiki1969/items/3d25aa81a376eee2e7c2)
– [ruruby: RustでつくっているRuby](https://qiita.com/sisshiki1969/items/4d76e69545ca1c26ed48)
– [Ruby処理系自作入門](https://qiita.com
selfの使い方
インスタンスメソッドの中では「self」を用いて、「self.変数名」
前提として
インスタンス=>クラスで作られた設計図を基に作られたも
インスタンスメソッド=>クラス内で定義されたメソッド(インスタンスに対して呼ばれるからインスタンスメソッドと呼ばれる。)selfを用いる場合
selfには呼び出したインスタンスが代入されている
LINEWORKSの特定ルームにメッセージを送る方法(API 2.0対応のRuby版)
# ゴール
Rubyのコードから実行すると、LINEWORKSに登録されたボットが、指定されたルームに任意のメッセージを送ることができます。
![スクリーンショット 2022-12-25 0.44.39.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/524261/ef04c309-455a-f148-d6a0-66ab010dbbe0.png)# メッセージの送信 – トークルーム指定
LINEWORKS Developersで調べると、以下のAPIを呼び出す必要があるようです。
https://developers.worksmobile.com/jp/reference/bot-channel-message-send?lang=ja
![image (1).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/524261/a58a2fcb-88a4-af9b-3bb9-46cf2148166a.png)
具体的なH
【Rails】コメント削除ボタンをコメントしたユーザーのみ表示させるには。
# はじめに
プログラミング初学者の者です。オンラインでプログラミングを学習させて頂いてるのですが、さらに理解を深めていきたいと思い、学習したことを備忘録として、残して理解を深めていきたいと思います。
また、間違った点など、ありましたら、ご指摘いただけると幸いです。よろしくお願いします。# コメント削除ボタンをコメントしたユーザーのみ表示させるには。
現状下記の状態では全ユーザーに削除ボタンが現れてしまい、削除できる状態でした。
“`app/views/recipes/show.html.erb<% @comments.each do |comment| %>関連する記事
OTHERカテゴリの最新記事
- 2024.09.19
JavaScript関連のことを調べてみた
- 2024.09.19
JAVA関連のことを調べてみた
- 2024.09.19
iOS関連のことを調べてみた
- 2024.09.19
Rails関連のことを調べてみた
- 2024.09.19
Lambda関連のことを調べてみた
- 2024.09.19
Python関連のことを調べてみた
<%= comment.content %>
<%=link_
GitLab開発依存ライブラリからthin gemを排除した
【Rsepc】実行時間が長いテストを抽出する
URLからOGPを取得してDBに保存する
JavaエンジニアがRubyを使ってみて思ったこと
Railsで日時比較をする際に型が違って焦った話
カスタムマッチャーをカジュアルに書こう