タグ

Railsに関するmiguchiのブックマーク (109)

  • Ruby/Rails の勉強に何読んだらいいかと聞かれたとき - id:onk のはてなブログ

    「次の職場が Ruby なんだけど」と読み書きそろばんを聞かれたのと、大阪Ruby会議03、大江戸Ruby会議10、Kaigi on Rails 2023Ruby/Rails 関係のイベントに続けて参加して、作者の皆さまと会ったので。 「読める」になるために 言語仕様は何らかの 1 冊の冒頭の方を読めば雰囲気は掴めるだろう。 Ginza Rails27 igaiga - Speaker Deck 著書や技術顧問、健康診断レポート でお馴染みの @igaiga555 さんの作った表で、難易度別にまとまっている。 たのしいRuby か、プロを目指す人のためのRuby入門 が定番かなぁ。 できることを知る るりま (Ruby リファレンスマニュアル) の Enumerable、String Rails Guides の Active Support Core Extensions 日

    Ruby/Rails の勉強に何読んだらいいかと聞かれたとき - id:onk のはてなブログ
  • 【PageSpeedInsights】分析方法と改善方法 (LCP改善で38点→97点へ) - Qiita

    LCPのスコアが最重要 3年間スコアに悩まされてましたが、集中的に改善を行い97点まで上げました。 基的なウェブサイトの分析方法を知り、着実に改善する方法をまとめます。 振り返ると LCP のスコアが最重要項目でした。 他の指標は LCP のスコアを上げるための補助項目な側面が多いため、LCPに着目して改善しましょう PSI改善の基礎が解ってる人は レンダリング改善をご覧ください 他の項目はみなさん見飽きてることでしょう 基礎がわかってる人はレンダリング改善をご覧ください。 スコア改善の順序 スコア改善はこの順番でやると挫折しないのでおすすめです。 ファイル容量 (多分もうみなさん恐らくやってますよね!) サーバ応答速度 (ここもN+1とかも恐らくやってますよね!) レンダリング → ここが課題 今回の記事ではこの3点を軸に改善方法をまとめていきたいと思います。 恐らくファイル容量とサー

    【PageSpeedInsights】分析方法と改善方法 (LCP改善で38点→97点へ) - Qiita
  • Rails 7 + Hotwireで実用的なSPAを作ってみた - Studyplus Engineering Blog

    こんにちは、サーバーグループの市川です。モバイルクライアントグループに所属していましたが、バックエンドの開発を担当することが多くなったので、サーバーグループ異動にしました。 最近、Studyplusブックというサービスをリリースしました。Studyplusアプリ内で、200冊以上の参考書が読み放題で使えるサービスです。 このサービスの開発にあたって、社内向けの管理画面を新規に構築したのですが、Rails 7から標準でインストールされるHotwireを利用することにしました。 今回はHotwireを実際に利用する上で、どういったUIを作ればいいか試作しましたので、その話を書きます。 作った画面 書いたソースコード 使った技術 解説 Turboを理解する Turbo Frameでフレーム分割する 追加フォーム (Turbo Frame) 追加処理 (Turbo Stream) 編集フォームと更

    Rails 7 + Hotwireで実用的なSPAを作ってみた - Studyplus Engineering Blog
  • できるだけインフラ運用したくない Ruby on Rails on Google Cloud

    TL; DR Google Cloud 上で Rails をできるだけインフラ運用しなくて済むように構築するとしたら、こういう構成にするのはどうだろうか? メインの Web アプリは Cloud Run メインのデータベースには Cloud Spanner 非同期ワーカーには GKE Autopilot 非同期メッセージングキューには Cloud Pub/Sub DB マイグレーションには GKE Autopilot rails console には GKE Autopilot はじめに 先日、Cloud Spanner の ActiveRecord アダプターのバージョン 1.0 がリリースされました。 Scale your Ruby applications with Active Record support for Cloud Spanner | Google Cloud Blog

    できるだけインフラ運用したくない Ruby on Rails on Google Cloud
  • Ruby on Railsの環境構築をElastic Beanstalkで行う - Qiita

    この記事について 最近は、主にTipsのところを更新しており、Elastic Beanstalkに関する私的メモのような感じになっております。 2019-04-03 assets:precompileについて を追加 2021-01-21 PlantoformAmazonLinux2をを利用する場合、eb-activitiy.logがeb-engine.logになる旨を追記 2021-03-23 PlantoformAmazonLinux2をを利用する場合の環境変数読み込みについて追記 Elastic Beanstalkとは アプリケーションのインフラ周りをよしなにやってくれるAWSが提供するPaaS もう少し説明すると、Webアプリを公開する場合、Webサーバ、アプリケーションサーバ、DBサーバを立てて、それぞれを連携させる必要があります。場合によってはロードバランサ(ELB)でリク

    Ruby on Railsの環境構築をElastic Beanstalkで行う - Qiita
  • Firebase Authentication の ID トークンを Ruby で検証する - satococoa's blog

    ID トークンを確認する | Firebase にあるように、Fireabse Authentication によって発行された ID トークンを正しく検証することにより、そのユーザの user_id を確認することができます。 Firebase Admin SDK が提供されていればそれを使うことで簡単に検証できるのですが、Ruby 版は提供されていないので Rails から使いたい場合などは自分で検証処理を書くことになります。 検証すべき内容は ID トークンを確認する | Firebase に書いてあるのでそれに沿って書いていきます。 要: JWT gem # @see https://firebase.google.com/docs/auth/admin/verify-id-tokens?hl=ja # # Usage: # validator = FirebaseAuth::To

    Firebase Authentication の ID トークンを Ruby で検証する - satococoa's blog
  • ansibleを使ってRailsを立ち上げてみた。 - 株式会社BEFOOL ブログ

    取り上げる題材を散らかしまくっておりますが、今回はansibleを使ってrailsを立ち上げてみようかと思います。 rubyも触ってみたいですしねー。 環境は毎度おなじみ、vagrantでやります! 今回はついでにvimも一緒にインストールされるように作って楽しようかなと思います。笑 では早速いきます。 まずはplaybookの中をざっとご紹介。

  • Active Record の関連付け - Railsガイド

    1 関連付けを使う理由 Railsの「関連付け(アソシエーション: association)」は、2つのActive Recordモデル同士のつながりを指します。モデルとモデルの間で関連付けを行なう理由はおわかりでしょうか。関連付けを行うことで、自分のコードの共通操作がシンプルになって扱いやすくなります。 簡単なRailsアプリケーションを例にとって説明しましょう。このアプリケーションにはAuthor(著者)モデルとBook(書籍)モデルがあります。一人の著者は、複数の書籍を持っています。 関連付けを設定していない状態では、モデルの宣言は以下のようになります。

    Active Record の関連付け - Railsガイド
  • Rubyデザインパターンまとめ

    GoFのデザインパターンとは、「プログラミングのベストプラクティスを体系化したもの」です。このベスト・プラクティスをしっかりと理解して設計すれば、ソフトウェア設計の効率を高めることができます。またデザインパターンが「プログラミングの思想」の共有をよりスムーズにしてくれます。先人たちの試行錯誤の結果を効果的に利用して、プログラミングをもっと楽しんでしまいましょう! 🐯 デザインパターンのポイントGoFのデザインパターンには下のプリンシパルがあります。 変わるものを変わらないものから分離する インタフェースに対してプログラミングし、実装に対して行わない 継承より集約 委譲、委譲、委譲 必要になるまで作るな(You Ain’t Gonna Need It./YAGNI) 🏀 デザインパターン一覧 アブストラクトファクトリ ビルダ ファクトリメソッド シングルトンパターン アダプタ コンポジッ

    Rubyデザインパターンまとめ
  • RubyとRailsの学習ガイド2019年版

    この記事は RubyそしてRailsをこれから勉強したい方に、どんな技術を勉強すればいいかと、それらの技術全体のガイドマップを図示します。そしてそれを学ぶための資料(書籍、Web記事ほか)を紹介していきます。この記事は、頭の中に技術全体の地図を描き、イメージしてもらうのが狙いです。 Railsアプリを作るときに必要になたくさんの技術について説明していきますが、当にたくさんの技術が出てきます。まだ学んでいない、分からない言葉が出てくると思いますが、全体を把握するために、ひとまずは「そういう技術があるのだな」くらいで捉えてもらえればと思います。将来、その言葉が出てきたときに「どこかで聞いたような?」と思えたら儲けものです。 勉強方法のお勧めは、1つの知識を徹底的にやるよりも、まずは全体を通して勉強し、そのあとで勉強したいところに戻って積み重ねて学んでいく方が、挫折しづらいのでお勧めです。 追

  • 【動画付き】Rails 5.1で作るVue.jsアプリケーション ~Herokuデプロイからシステムテストまで~ - Qiita

    はじめに Rails 5.1ではJavaScript/index.html.erb周りのサポートが大きく改善されました。 これにより、Vue.jsやReactといったモダンなJSフレームワークをRails内で非常に扱いやすくなっています。 僕も実際に試してみましたが、当にびっくりするぐらい簡単にVue.jsやReactを動かすことができました。 そこでこの記事ではRails 5.1とVue.jsを組み合わせたサンプルアプリケーションの作成方法をチュートリアル形式で、できるだけ詳しく説明します。 また、ローカルで動かしておしまい、ではなく、Herokuにデプロイしたり、テストコードを書いたりするところまでカバーします。 この記事自体は長いですが、実際に手を動かすと(スムーズに進んだ場合)30分以内で終わらせることができるはずです! 今回作成するサンプルアプリケーション 今回は以下のリンク先

    【動画付き】Rails 5.1で作るVue.jsアプリケーション ~Herokuデプロイからシステムテストまで~ - Qiita
  • Rails5のActionCable(WebSocket)をPumaとnginxで本番環境で動かす - Qiita

    リアルタイムな処理をしたいときにWebSocketをする実装は、Node.jsが多いかと思いますが、結構めんどう・・・ RailsのActionCableを使ったら簡単に実装できて結構良さげ!、いざデプロイして番環境で動かそうと思うとわりとRails4時代とは同じようにいかずハマったのでメモ。 rails newした状態からスタート nginxの設定 server { listen 80 default_server; root /var/rails-server/public; location ~* \.(ico|css|gif|jpe?g|png|js|html)(\?[0-9]+)?$ { break; } location / { proxy_pass http://0.0.0.0:3000/; proxy_set_header X-Forwarded-For $proxy_a

    Rails5のActionCable(WebSocket)をPumaとnginxで本番環境で動かす - Qiita
  • jQuery + Railsで作られた非SPAサイトを一部だけReact & ES2015で書き換えました - LCL Engineers' Blog

    フロントエンドエンジニアの岡田です。 昨年末に、弊社のサービス:夜行バス比較なびの一部分をReactで書き換えました。 www.bushikaku.net 夜行バス比較なびのJavaScriptは、構築から3年以上たつこともあり、コードの見通しが悪くなってきています。 リグレッションテストなども導入しながら、不具合が起きないように努めてはいますが、テストに時間がかかりすぎるなどの問題がありました。 techblog.lclco.com そこで今回、Reactを導入して、リファクタリングをしました。 いろいろつまずくところもあったので、この記事では、夜行バス比較なびでどうやってReactを使っているかをご紹介します。 SPAサイトの事例はけっこうありますが、運用中のサイトの一部にだけReactを導入、という事例はあまりなさそうなので参考になれば幸いです。 環境 Webpackの設定 webp

    jQuery + Railsで作られた非SPAサイトを一部だけReact & ES2015で書き換えました - LCL Engineers' Blog
  • Rails5でコントローラーの記述を省略~inherited_resources | | Scimpr Blog

    inherited_resourcesはコントローラーの開発時にレストフルなactionを継承してくれるgem Rails5にはactive_adminのフォークがいち早く対応したみたい. josevalim/inherited_resources activeadmin/inherited_resources Gemfile

    Rails5でコントローラーの記述を省略~inherited_resources | | Scimpr Blog
  • 今週のrailscasts - Inherited Resources - maeshimaの日記

    いわゆるRails的なアプリケーションを作る時に手抜きが出来るgem。他にもいくつか似たようなgemがあるけど、inherited_resourcesは Rails 3.0 に対応していて、かつ一番新しい感じだそう。 Railscasts - Inherited Resources ASCIIcasts - “Episode 230 - Inherited Resources” inherited_resources bundler経由でinstallすると has_scope responders の二つの依存しているgemもinstallされる。 class ProductsController < InheritedRecources::Base end これだけでproductのCRUDができる。挙動を変更したい場合は普通にオーバライドすればいい。ただ、createした後にinde

    今週のrailscasts - Inherited Resources - maeshimaの日記
  • Docker で Rails5 の開発環境を「rails new」から構築する - Qiita

    追記(2017/02/13) 以下の方法では、Gemfileを修正するたびにDockerイメージをビルドし直す必要がありますが、もっと高速に開発できるテンプレートを作成しました。 高速に開発できる Docker + Rails開発環境のテンプレートを作った はじめに Dockerを使ってRails5の開発環境を構築します。 また、railsコマンドをspringを通して実行できるようにします。 rails new から rails db:createまで、すべてをDockerの上で行うことを目指して構築します。 また、実際のコードはこちらにアップロードしています。 私の手元の環境は、OS X で行いましたが、基的にDockerが使えればできます。 手順 1. rails new する環境を作成する 以下のファイルを作ります。 Dockerfile.development docker-c

    Docker で Rails5 の開発環境を「rails new」から構築する - Qiita
  • Rails だって硬いデータベース設計をしたい!そんなあなたに贈る Tips 4 選 - peroli Developer's Blog

    2016 - 09 - 09 Rails だって硬いデータベース設計をしたい!そんなあなたに贈る Tips 4 選 list Tweet こんにちは、ペロリのサーバサイドエンジニアの @a_suenami です。 今回は Ruby on Rails アプリケーションにおけるデータベース設計についてちょっとご紹介したいと思います。 データベース設計してますか? みなさん、データベース(以下、DB)設計していますか?Scaffold したときにできた migration ファイルをそのまま使ったりしてませんよね? Ruby on Rails (以下、 Rails )は CoC(Convention over Configuration: 設定より規約)を強く提唱している フレームワーク であり、それによって得られる恩恵も大きい反面、かなり強めに設計の自由度を束縛されるという特徴もあります。特に

    Rails だって硬いデータベース設計をしたい!そんなあなたに贈る Tips 4 選 - peroli Developer's Blog
  • あなたがマスターしたのはいくつ? Railsを習得するために必要な技術要素の一覧 - Qiita

    これはなんですか? これは「This is Why Learning Rails is Hard(Railsの習得が大変な理由はこれだ)」という海外記事に載っているマインドマップを日語化&リスト化したものです。 元記事には「Railsを習得するために必要な技術要素の一覧」を表す、以下のようなマインドマップが載っています。 長年Railsの開発に携わってきた人間として、このマインドマップは「うん、たしかに!」と非常に納得できる内容です。 ただし、サイズの大きな画像なので一覧性に欠けるのと、英語なので日人にとってはぱっと頭に入りづらい点があるのも否めません。 そこでいつでもぱっと確認できるように、このマインドマップ内容を日語化&リスト化することにしました。 このリストを読んで、自分がすでに身につけている技術要素は何か、また、これから習得が必要な技術要素にはどんなものがあるのか、各自で確認

    あなたがマスターしたのはいくつ? Railsを習得するために必要な技術要素の一覧 - Qiita
  • Rails CLI Commands for Elixir & Phoenix

    At first glance, Elixir might look like Ruby, but it’s not Ruby, anyone who has worked in both languages for any amount of time should back that up. But just because it’s not Ruby, doesn’t mean that Rubyists should be turned off by Elixir, and all that it has to offer, including the Phoenix Framework. When you install Elixir, you also get a tool called “mix” which basically handles and performs th

    Rails CLI Commands for Elixir & Phoenix
  • Rails エンジン入門 - Railsガイド

    ガイドでは、Railsの「エンジン」について解説します。Railsエンジンのきわめて簡潔で使いやすいインターフェイスを用いて、ホストとなるRailsアプリケーションに機能を追加する方法についても解説します。 このガイドの内容: エンジンの役割 エンジンの生成方法 エンジンのビルド方法 エンジンをアプリケーションにフックする エンジン機能をアプリケーションで上書きする 読み込み/設定フックでRailsフレームワークが読み込まれないようにする方法 1 Railsにおけるエンジンの役割 エンジン (engine) は、ホストとなるRailsアプリケーションに機能を提供するミニチュア版Railsアプリケーションとみなせます。この場合、ホストとなるRailsアプリケーションは、実際にはエンジンに「ターボをかけた」ようなものにすぎず、Rails::ApplicationクラスはRails::Engi

    Rails エンジン入門 - Railsガイド