You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
読みました。 Take My Money: Accepting Payments on the Web 作者:Rappin, NoelPragmatic BookshelfAmazon どんな本か 副題が "Accepting Payments on the Web" となっているように、決済 (payment) システムをもつ Web アプリケーションを作る方法について説明しています。『達人プログラマー』などでおなじみの The Pragmatic Bookshelf シリーズの本です。 チケット販売システムの開発を通して、次のような具体的な話題に触れています。基本的には Rails 5 を使ってロジックからビューまでを開発していきます*1。 決済システムの実装 ショッピングカート 外部決済サービスとの連携 サブスクリプション機能 エラーケースとその対策 管理画面の実装 返金など注文の操
昨日は ginza.rb 31回目のミートアップでした。 Ginza.rb 第31回 ユーザの権限管理どうしてます? - Ginza.rb | Doorkeeper @kyuden_ さんに、現状の二大認可 gem である cancancan や pundit、それらの問題点を解決するために作った banken について発表してもらいました。 感想 個人的には pundit のリソースベースでの権限管理は悪くないと思っています。ただスライドで書かれているような、Admin::UsersControlller と UsersController で処理を分けたい時などのエッジケースで回避策を模索しなきゃいけないのはだるいですね。banken だと、コントローラベースなのでコード記述量は増えてしまうのですがその分ハマりどころが減るので、そのトレードオフを考慮しつつ案件によって使い分けるのがいい
関西Ruby会議06で発表したスライド資料です :) Railsガイド: http://railsguides.jp/ DEMO動画一覧: https://yasslab.wistia.com/projects/4msq4voot3 【関連リポジトリ】 - yasslab/railsguides.jp: https://github.com/yasslab/railsguides.jp - yasslab/konjak: https://github.com/yasslab/konjak - yasslab/gtt-downloader: https://github.com/yasslab/gtt-downloader - yasslab/translation-api-examples: https://github.com/yasslab/translation-api-exampl
RailsアプリでクソみたいなSQLを大量に発行している箇所を知りた〜い Railsアプリで、発行されるSQLの量を頑張って減らすときに、例えばN+1問題をなんとかしたいと思ってBulletとかいうgemを入れて、N+1を出している箇所を特定したりする場合は多いと思います。 実際bulletはすっごい便利なんですが、N+1問題を発生させている箇所を検出できない場合があったり、そもそもの原因がもともと書いているロジックが悪くて、それの見直しで解決しなきゃいけない場合だったりとかする場合がよくあると思います。 で、それで前々から 「このTerminalに出てくるSQL文、Railsアプリのどこが出してるのかな〜それがわかったら超ベンリなのにな〜〜〜」と思ってました。 会社の同期に聞いたらめっちゃ便利なのがあったんで以下に書きます。もっと早く知りたかった。 query_traceをぶっこむ qu
mongoidが実行するクエリを確認する方法メモ。 mongoidが実行するクエリの出力方法 実際にログを出力するのは、mongoidではなくmopedになる。 # [rails root]/config/environments/development.rb # mongoidのログ出力設定。実際にログを出力するのはMopedだけっぽい Mongoid.logger.level = Logger::DEBUG Moped.logger.level = Logger::DEBUG # rails consoleだけにログが出力される Mongoid.logger = Logger.new($stdout) Moped.logger = Logger.new($stdout) # ファイルにログを出力する Mongoid.logger = Logger.new("#{Rails.root}/
はじめに 僕の妻は兵庫県西脇市でCoupé Baguette (クープ バゲット)という小さなパン屋さんを営んでいます。 この店のwebサイトは僕がRailsで作り、Herokuでホスティングしています。 http://coupe-baguette.com 去年の1月に全面改装して以来、あまり触ってこなかったのですが、RubyやRailsのバージョンも古くなってきたので、そろそろ最新化したいな~という気持ちが高まっていました。 というわけで先日、ようやくサイトをアップデートすることができました。 見た目の変化は全くありませんが、内部的にはRubyのバージョンが1.9.3から2.1.1に、Railsのバージョンが3.2から4.1にアップデートされています。 さらに、TurbolinksやCloudFlare(CDN = Contents Delivery Network)も導入して、サイトの
横沢です、本日もよろしくお願い致します。 先日のエントリに興味を持って頂き話を聞きたいという事で、ランサーズ株式会社の永田さんと堀川さんをお招きしRuby on Rails移行についての勉強会を行いました。実際には「移行」という部分だけでなく、システムやサービス全般に関わる様々な議論が行われとても有意義な時間が過ごせたと思います。ランサーズ株式会社の永田さん、堀川さん、改めてありがとうございました! 勉強会で利用したアジェンダスライドを掲載しておきます、ディスカッションベースで進めたのでスライドの内容は薄いです。 今回外部の方と話しをする事で新たに発見、感じる事が多々ありました。 ・移行時にサービスを絶対に止めない、あるいはダウンタイムを最小化するにはどうするか ・CakePHP等に比べ1プロセスが重くなりがちなRoRでピークアクセスに対応するにはどうするか ・PHP系フレームワーク
※この内容はRailsで書かれたWantedlyのプロジェクトに参加することを想定していて、一部Railsのデフォルトでない機能の解説もありますが、使っているgemもメジャーなもので割と汎用的な内容になっていると思うので、是非参考にしてみてください。 URLを見ればだいたいどこを変更すればいいかわかると言うこと Ruby on RailsはMVC(Model View Controller)にもとづいて設計されていて、ディレクトリ構造的にもapp/以下に綺麗に分かれている。 MVCって何?って人は、ググってみてほしいが、割と宗教論争になりかけているので、モデルはDBの各テーブルに関連していて、ビューはHTMLの部分に近くて、コントローラーはビュー用にモデルを引っ張ってくるつなぎ役だと思ってれば大体合っている。これ以上は深く考えずにコードを読んだほうが良いと思う。 Router でもコード的
7 Patterns to Refactor Fat ActiveRecord Models という記事があり、読もう読もうと思いつつ1年くらい経ってしまった。 ようやく読んだので理解した内容を書いておく。 コード例は元記事のもの。 Rails で thin controller, fat model を心がけていると、model がマジで激太りしてヤバくなる。 実際に自分が仕事で書いている rails アプリも激太りしててヤバい。 この blog の筆者が作っている CodeClimate で C 判定をもらう程度には肥満体型になっている。 Mixinに抜き出さない! Model が太ってきた時に考えるのは ActiveSupport::Concern を使って感心事を抜き出して、Mixin にすることだと思う。 実際に手元のアプリでも models/concerns/ なんていうディレ
スマホアプリから会員の新規登録、ログインが両方できるようにAPIを作成中。ようやく自前でアクセストークンを作ってOAuth認証が出来たのでまとめておく。 まず何がしたいか? スマホアプリでAPI認証ができるように、OAuthを自前で作成したい。 -> スマホアプリ側ではユーザ名とパスワードを入力すればトークンが取って来れて、そのトークンで各APIにアクセスすればユーザ固有の情報が取って来れるようになる仕組みを作る。 スマホアプリ側でユーザ作成も出来るようにしたい。 -> APIでユーザが作れるようにする。もちろんhttps前提。 環境 gemfile ruby '2.0.0' gem 'rails', '4.0.0' gem 'rails-api' gem 'active_model_serializers' gem 'mongoid', '4.0.0.alpha1' gem "moped
プログラム初心者な方向けに始めたRailsチュートリアルシリーズです。今回はRailsのWebアプリケーションでDBを扱う場合に便利なライブラリ『Active Record』の入門記事です。 たとえば、拙著の『Nokogiri を使った Rubyスクレイピング』で取得したデータをWebサイトで表示する場合は、スクレイピングした時点でDBに入れておくのが一般的です。そうすることで、スクレイピングする処理と、表示にかかわる処理をシンプルにできます。 🐡 目次(1) 前提として (2) ActiveRecordとは? (3) ActiveRecordについて最初に読んでおくと良い資料 (4) シンプルなActiveRecordの操作について (5) 実際にコードを書いていくのに参考になりそうなサイト 🐝 (1) 前提としてこの記事は、Railsのアプリケーションをベースに話を進めていきます。
Spice Lifeの五十嵐邦明さんの一橋大学のRuby概論スライドがかなりすばらしかったのでまとめてみました。こんなキャッチーな資料がネットで手に入るというのは本当にありがたい限りです! ちなみに、スライドがたくさんあるので3部作ですw (1)『Ruby 概論のスライドが素晴らしかったのでまとめてみた(第1部)』 (2)『Ruby 概論のスライドが素晴らしかったのでまとめてみた(第2部)』 (3)『Ruby概論のスライドがすばらしかったのでまとめてみた(第3部)』<= 今ここ< strong> 🐰 Ruby on Rails講義第19回: HTML, CSS 🍮 Ruby on Rails講義第20回: CRUD基礎 🚕 Ruby on Rails講義第21回: New, Create 🐹 Ruby on Rails講義第22回: Model 🐞 Ruby on Rails講義
Spice Lifeの五十嵐邦明さんの一橋大学のRuby概論スライドがかなりすばらしかったのでまとめてみました。こんなキャッチーな資料がネットで手に入るというのは本当にありがたい限りです! ちなみに、スライドがたくさんあるので3部作ですw (1)『Ruby 概論のスライドが素晴らしかったのでまとめてみた(第1部)』 (2)『Ruby概論のスライドがすばらしかったのでまとめてみた(第2部)』<= 今ここ< strong> (3)『Ruby 概論のスライドが素晴らしかったのでまとめてみた(第3部)』 🐯 Ruby講義第10回: オブジェクト指向 🐝 Ruby講義第11回: 継承、モジュール 🐡 Ruby講義第12回: Gem 🐞 Ruby講義第13回: Sinatraで作る簡単Webアプリケーション 👽 Ruby講義第14回: 夏学期総復習 😎 Ruby講義第15回: 夏学期総復習
Railsで使いまくりActive Supportなので、そんなにまとめがいが無いし、沢山あるのでまとめられないけれど、代表的なモノをとりあえずまとめておく。 blank?やpresent?やtryなんかは省略する。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く