→Ruby on Rails RubyによるWebアプリケーションフレームワーク RoR
Agile Web Development with Rails
10分で作るRailsアプリ for Windows http://masuidrive.jp/rails/
Ruby on Rails公式サイトの採用サイト紹介ページ http://wiki.rubyonrails.org/rails/pages/RealWorldUsage
RailsのRoutesで名前をつける Railsでget 'hoge', to: 'foo#action1'というRouteに対して_pathとか_urlとかのルーティングヘルパーを作りたいとき、:asオプションをつければOK。 railsguides.jp
とんでもないことが起こりました。まじでやばいです。 前回の記事で共有したように「RailsのgithubにIssueとして気軽に立てて良いよ〜」という旨の返信をJean Boussierさんから頂いたので、RailsのIssueを作成してから3日ほど経過しました。 www.okb-shelf.work しばらく何も反応がなかったので「やっぱりダメかぁ...」と思っていたところ、事態が急変したのです。 対応のPRが作成・マージされた なんとJean Boussierさん自ら対応のPRを作成してくれました。 github.com 元々はRailsの起動に影響がないように警告のログを出すという対応を…
こんにちは、開発チームでエンジニアをしている岡部です。 N2iではバックエンドの開発言語にRuby、フレームワークにRailsを用いた開発を行なっています。 日々、Railsを触る中で何度か同じリファクタリングをしていることに気づいたので、今回、知見として紹介してみたいと思います。このリファクタリングには多少のコストはかかりますが、効果は絶大で変更に強く、テストがしやすいコードになります。 同じような条件分岐が何度も登場する 値によって実行する処理を変えたい という場合には今回、紹介するクラスへの分割(ストラテジーパターン)がオススメです。 こちらの記事を読み終える頃には、どのようにコードをク…
Railsでtransactionがrollbackしない まんまこのブログに書いていることをそのままやっていた。 kossy-web-engineer.hatenablog.com 下の例のようにActiveRecord::Base.transactionの中で例外を処理していたらそりゃロールバックは走りませんよね。 # だめな例 ActiveRecord::Base.transaction do # なんか処理 rescue Activerecord::RecordInvalid => e # 例外処理 end 良い例は次のような感じ。 # 良い例 begin ActiveRecord::…
早いもので一年も折り返し...。東海地方もいよいよ梅雨入りしてジメジメした季節になりました。 先日、cache_storeの設定に環境変数を指定してInterger型に変換しないと、キャッシュの書き込み時にエラーが出るという現象を確認しました。この振る舞いに疑問を感じたので、RailsのコントリビュートガイドにならってRails Discussionに投稿をしてみました。 詳細は前回の記事をご覧ください。 www.okb-shelf.work ぶっちゃけ、反応ないんだろうなぁ〜と諦めていた部分はあったのですが、なんと嬉しいことに素晴らしいアイディアと共に返信を頂くことが出来ました。 返信が来た…
こんにちは。サーバーサイドエンジニアの三村(@t_mimura)です。 主に保険薬局と患者さまを繋ぐ「かかりつけ薬局」化支援アプリ kakariのサーバーサイド開発(Ruby on Rails)を担当しています。 突然ですが! この度kakariプロジェクトは「型導入」をしました! kakariのRailsリポジトリに型導入PRがマージされた様子 皆さんのプロジェクトは「型導入」していますか? 「型導入」しているRailsプロジェクトはまだ少ないのではないでしょうか なぜ型導入しないのか 型を導入すると何かしらが便利になることは分かっているのに何故やらないのでしょうか(煽り気味) 「型の恩恵」…
「今年こそは...今年こそは...OSSに貢献するぞ...!」と思い気づけはや3年。 気持ちだけが先行して何をしたら良いのか分からず。結局、それらしいことは何もしていませんでした。 ですが、先日開催されたRubykaigi2023(コロナになって行けなかったけど)へ参加した方のツイートや、参加レポートを見て何かOSSに貢献できればなぁ...と改めて感じました。 product.st.inc 言ってみれば業務でよく書くRubyもRailsも誰かが日夜、メンテナンスしてくださっているお陰で僕は飯が食べられています。本当に感謝しかありません。よく「〇〇言語はイケてない」だの「gemがメンテナンスされ…
バージョン > ruby -v ruby 3.1.2p20 (2022-04-12 revision 4491bb740a) [x86_64-linux] > rails -v Rails 7.0.4.3 先にまとめ 結論 signedかつpermanentなcookieを使う場合は、cookie書き込み箇所だけでなく読取箇所にもpermanentを書いておいた方が安心。 # 書き込み箇所 cookies.permanent.signed[:user_id] = user.id # 読み取り箇所 user_id = cookies.permanent.signed[:user_id] 理由 c…
Rubyでpg gemを使って、postgresqlに接続してクエリの実行結果を見ていたところ、boolean型のカラムの戻り値がTRUEの場合にt、FALSEの場合にfとなる現象を確認しました。 CREATE TABLE test1 (a boolean, b text); INSERT INTO test1 VALUES (TRUE, 'sic est'); INSERT INTO test1 VALUES (FALSE, 'non est'); SELECT * FROM test1; a | b ---+--------- t | sic est f | non est 最初はpg側で…
Rails 7でlink_toにHTTP Post methodを付与する link_to "表示文字列", "パス", data: { turbo_method: :post }と書けばOK。Rails 6とは変わっているので注意。 discuss.rubyonrails.org
2023/06/07分のコミットです。 CHANGELOGにのったコミットは以下の通りです。 actionpack/CHANGELOG.md The with_routing helper can now be called at the class level. When called at the class level, the routes will be setup before each test, and reset after every test. actionview/CHANGELOG.md Stop generating Link preload headers onc…
Rails + RSpecにて、Rake Taskのテストコードを書く機会がありました。 ただ、引数が必要なRake Taskのテストを書くときに悩んだことがあったため、メモを残します。 目次 環境 引数なしのRake Taskをテストする 引数ありのRake Taskをテストする [] を使って値を渡すパターンのRake Taskをテストする ENV を介して値を渡すパターンのRake Taskをテストする ソースコード 環境 Rails 7.0.4.2 また、 rake_helper.rb に以下の設定が記載されているものとします。 require 'rails_helper' requi…
自己紹介 後2か月ちょっとで25歳アラサーになる関西済みの女。 社会人3年目。新卒で銀行に入行するも体調を崩し現在休職中。 窓口業務と個人営業を経験。営業は好きでもなく嫌いではないと感じたが、銀行特有の細かな業務が多く、少しでもミスをすると吊し上げの文化が嫌になり将来について真剣に考えるようになる。 また、将来のことを考えて場所を問わず働けるようになりたい、このままでは銀行でしか活躍できない人財になるという焦りがあった。 プライベートは旅行、ライブ、料理、お菓子作りが好き。 プログラミング学習のきっかけ ・一生もののスキルを身につけたい ・ホームページ制作に興味があった。 ・独立やフリーランス…
Railsの初期化プロセスは複雑で、数多くのステップが絡み合っています。この記事では、その複雑さをステップバイステップで確認していくことで、Railsの初期化順序を理解できます。そして、Railsの初期化にまつわる改善やバグ解消を行いやすくなるでしょう。 Ruby on Railsのバージョンは、7.0.5で確認しています。また、Rails の初期化プロセス - Railsガイドも大いに参考にしています。 Railsの初期化プロセスの全体的な流れ Step 1. railsコマンドの実行 Step 2.config/application.rbの読み込み Step 2.1. config/ap…
こんにちは。スナックミーでエンジニアをしているタク(@yamataku3831)です。 3月30日に開催された、株式会社サーキュレーション主催のオンラインイベント【CTO meetup】にて、Ubie 株式会社のエンジニアの方と一緒にスナックミーの CTO が登壇しました! flxy.jp 今回は「流行りだけでは決めない自組織に求められる最適な技術とは?」というテーマについて、以下のようなことについて発表しました。 スナックミーにおける技術選定の歴史について どのような考えを軸に技術選定を行ってきたか そのうえで今後技術的にどういった挑戦をしていきたいか 今回はこちらの内容にフォーカスを当て、…
JMDCでは医療ビッグデータを活かした事業を幅広く展開しています。今回は主に保険業界を中心に、JMDCが持つデータやノウハウを駆使した新しいサービスを開発し、お客様にソリューション提供するインシュアランス本部をご紹介します。開発プロジェクトをリードする今出さんと相園さんにインシュアランス本部の業務内容や組織について伺いました。 <左:相園さん、右:今出さん> 【プロフィール】今出 通(いまで とおる)インシュアランス本部 ソリューション部 PMメーカー系SIerにて基幹システムの運用保守や、新規サブシステムの導入支援、またB2CサイトのITアドバイザリーやエンハンス開発のPMを経験した後、20…
こんにちは、現役沖縄フリーランスエンジニアのmahです。 このブログでは、 僕がIT未経験から約1年でフリーランスエンジニアになるまでの過程、 ノウハウなどを書いていきます。 今回は、 【2023年】 東海地方(愛知、岐阜、三重、静岡)で評判のおすすめフリーランスエージェントや案件求人サイト についてです。 東海地方(愛知、岐阜、三重、静岡)のフリーランスエージェントや求人サイトを探す中で、下記のようなお悩みはありませんか? 「ずっと名古屋に住んでいるけど、リモート可能な案件がなかなか見つからない...」 「静岡移住を考えてるけど、どのフリーランスエージェントが沢山フルリモート案件を持ってるの…
2023/06/06分のコミットです。 CHANGELOGにのったコミットは以下の通りです。 railties/CHANGELOG.md Add engine's draw paths to application route set, so that the application can draw route files defined in engine paths. activerecord/CHANGELOG.md Include the connection_pool with exceptions raised from an adapter. Allow composite p…
6/6(月) 睡眠時間6時間 最近の仕事中の趣味はショートカットキーを覚えること。 新しいのを覚える度にレベルアップBGMが鳴り響く気分です。 やったこと 昨日の日記 仕事 ウォッチドッグス2 ブルアカ 最終章4 感想 今日は午前休をとっていたため楽な日。いつも通りの時間に起きたけど、せかされた気分で起きるのと普通に起きるのでは快適さが全く違った。 とりあえず日記書いて、溜まっていた洗濯物片付けて掃除。気になっていた家のことを全て終わらせて日記も書いた。 仕事はRailsとの戦い。先輩に報告する直前まで分からん状態だったけど、ふと反例を試してみたらとっかかりをつかめて理解できた。 分からなかっ…
gihyo.jp 良いコード/悪いコードで学ぶ設計入門 の読書メモです。 このあと追記していきます…。 期待していること よくない設計やコードのパターンを知り、本業の開発に活かしたいです。 仲間と読むことで、同じ目線を持てればなおいい感じです。 はじめに 設計や実装上の問題を「悪魔」にたとえ わかりやすいけど、そのまま職場で使うと軋轢を生みそう…。 ただパターンに名前をつけて、チーム内で議論しやすくする効果もあると思うので…。 実世界では気をつけて使いたいです。 1 悪しき構造の弊害を知覚する 弊害はわかるけど、どうやったらこうなっていることに気づけるんでしょう…? 定性的に、「なんか開発スピ…
2023/06/05分のコミットです。 CHANGELOGにのったコミットは以下の通りです。 actionpack/CHANGELOG.md The Mime::Type now supports handling types with parameters and correctly handles quotes. activerecord/CHANGELOG.md Support multiple column ordering for find_each, find_in_batches and in_batches. Revert "Switch to i18n master bran…
今日は主に昨日の標準添付ライブラリ singleton の変更の revert や irb のバージョンアップなどがありました。 [4275a8098e] Stan Lo 2023-06-04 15:24:26 UTC 標準添付ライブラリ irb のバージョンを 1.7.0 に更新しています。 [068672cfe8] git 2023-06-04 15:25:17 UTC 4275a8098e59c43daa4a85efce9465af296f46c9 に追随して NEWS の default gems バージョンリストも更新しています。 [3a4302c742] Hiroshi SHIBA…
JMDCでエンジニアをしてます @dtaniwaki こと谷脇です。 github.com 最近は社内の業務改善にも取り組んでいます。JMDCでは健保、自治体等とのやりとりが多く、まだまだ手作業、紙作業が多く残っており、業務改善が重要な課題となっています。そんな中で先日、Wailsというフレームワークを使って印刷ミスを防ぐために印刷物の対象者リストから外字を使っている対象者を発見するツールを作ったのでその所感を書きます。 選定理由としては、 クロスプラットフォームで作りたい。(利用者はほぼWindows, 私はMac) 慣れているスタックで開発したい。(React/TypeScript/Mat…