前回Docker上でRailsアプリを立ち上げるところまでやってMySQL無いからエラー出るという所で終わっていましたが、今回はRailsコンテナとMySQLコンテナを関連付けて立ち上げてみたいと思います。 使用するimage docker pullで落とすなりしてください takashioshikawa/ruby-native-2.2.4 mysql:latest MySQLコンテナ立ち上げ mysql-containerという名前のコンテナを立ち上げます docker run --name mysql-container -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql オプション解説 -d : バックグラウンドで起動 --name mysql-container : コンテナに名前を付ける -p 3306:3306 : ポート指定 「
今日 @mad_p さんからRT来てたこのツイートに関して、ちょっと調べたのでまとめときます。 Security Issue in Ruby on Rails Could Expose Cookies http://t.co/JlsXVEn4rZ — Ruby on Rails News (@RubyonRailsNews) September 25, 2013 前提条件 Railsではデフォルトでsessionをcookieにのみ保存して、DBなりmemcacheなりのserver-side storageには何も保存しません。 これがCookieStoreとか呼ばれてるやつです。 この場合のsession cookieは、Railsのsession object (Hash object) をMarshal.dumpしてそれに署名を付けたtokenです。 rails 4では署名付ける代
$ bin/rails g scaffold user name:string mail:string password:string invoke active_record create db/migrate/20151214145437_create_users.rb create app/models/user.rb invoke test_unit create test/models/user_test.rb create test/fixtures/users.yml invoke api_resource_route route resources :users, except: [:new, :edit] invoke scaffold_controller create app/controllers/users_controller.rb invoke test_un
有料のWordpressテーマのBridgeとVisualComposerのセットはよく使いますが、 Bridgeの古いテンプレートはスライダーに以下のエラーメッセージが表示されてしまうことが多々あります。 Wordpressのバージョンアップに対応していないために出てしまうエラーらしいけど、最近少し多すぎるので備忘も兼ねて対処方を記載します。 まず、エラーメッセージは以下。 warning message: getimagesize(/home/……/logo_black.png):failed to open stream: No such file or directory in /home/…../themes/bridge/includes/shortcodes/shortcode-elements/slider.php on line… これが、ブラウザ上で表示したときに、スラ
simple_form は、Rails 用のform_for の拡張みたいなものです。 普通、form_for を使うと、タグ等について自分で書いていかないといけませんが、simple_form を上手く運用すると、view内にはform に関連するタグを書く必要はありません(的な感じ) 逆にいうと、タグを勝手に書いていくので、デザイナーへの殺傷能力は高い気がします。上手くコントロールするのが大変です(CoCの弊害だと思う)。 simple_form は、div要素での運用がデフォになってます。 で、表題のようなチャレンジです。あえてtableで果敢に挑戦します。 まず、viewの方には、以下のように書きます。 <%= simple_form_for @user do |f| %> <table> <%= f.input :name %> <%= f.input :email %> </t
AttributeMethods のできること 指定した属性に対して、まるっと同じ機能を実装する事が出来ます。 例えば、こんな感じ class Person include ActiveModel::AttributeMethods attr_accessor :name, :age, :address attribute_method_prefix 'clear_' define_attribute_methods :name, :age, :address def initialize(name:, age:, address:) @name = name @age = age @address = address end private def clear_attribute(attr) send("#{attr}=", nil) end end person = Person.ne
(訳注: 2016/3/2、頂いたフィードバックをもとに記事を修正いたしました。) Ruby on Railsは最近、急激に注目を集めていますが、その原因はほとんど、この言語が斬新なテクノロジーとしてもてはやされたことと、タイミングにあります。技術的な優位性は時間の経過とともに失われますから、タイミングがよかっただけでは、一過性のブームに終わり、このムーブメントの隆盛は長続きしません。従って、「Railsがいかにして、適切な技術としての位置を維持し続けるるだけでなく、影響力とコミュニティを拡大し続けてきたのか」をより多くの人に説明していく必要があります。そして、その維持・拡大を可能にした/していく要因は、物議を醸すことさえあるRailsの基本原則にあると考えています。 この基本原則はここ10年ほどの間に進化を続けてきましたが、最も強固な柱となっているルールはやはり、公開当初から制定されてい
今までRailsでデータ削除リンクを作るときに下記のようにconfirmオプションを使ってダイアログを表示させていたかと思う。 <%= link_to "削除", user, method: :delete, confirm: "本当に削除しますか?" %> しかし、Rails4.1の場合、Chromeで表示してみるとHTMLタグは以下のようになっている。 <a confirm="本当に削除しますか?" data-method="delete" href="/users/1" rel="nofollow">削除</a> 本来「data-confirm」となってほしいところが「confirm」となってしまい、リンクをクリックしても確認ダイアログが表示されず、そのまま削除が実行されてしまう。 タイプミスだと思ったが、下記の書籍によるとRails4.0で廃止予定、Rails4.1より完全に廃止さ
Rails公式ブログのRails 5 beta1の新機能についてのブログ記事『Riding Rails: Rails 5.0.0.beta1: Action Cable, API mode, Rails command』を英語の勉強がてら読んでみました! 🐡 Action Cable- Action Cableは、Websocketをハンドリングするためのフレームワーク - チャットや、Notificationを簡単に実装することができる チャットアプリケーションのサンプルソース# アプリの作成 $ rails _5.0.0.beta1.1_ new action_cable_sample --skip-spring --skip-bundle $ cd action_cable_sample # bundle install の実行 bundle install --jobs=4 --
Rails 5.0.0.beta1.1, 4.2.5.1, 4.1.14.1, 3.2.22.1, and rails-html-sanitizer 1.0.3 have been released! Hello everyone and happy Monday! Rails 5.0.0.beta1.1, 4.2.5.1, 4.1.14.1, and 3.2.22.1 have been released! These contain the following important security fixes, and it is recommended that users upgrade as soon as possible: CVE-2015-7576 Timing attack vulnerability in basic authentication in Action C
Ruby on Rails’ phenomenal rise to prominence owed much of its lift-off to novel technology and timing. But technological advantages erode over time, and good timing doesn’t sustain movements alone over the long term. So a broader explanation of how Rails has continued to not only stay relevant but to grow its impact and community is needed. I propose that the enduring enabler has been and remains
Ruby on Railsの開発者であるDavid Heinemeier Hansson(DHH)氏は、Ruby on Rails開発の基本方針を「The Rails Doctrine」として1月19日(現地時間)に公開した。また、「The Rails Doctrine」の公開とともに、Ruby on RailsのWebサイトがリニューアルされたほか、ロゴも変更されている。 The Rails Doctrine 「The Rails Doctrine」は、Ruby on Railsにおけるもっとも重要な支柱となる、以下の8項目で構成される。 Optimize for programmer happiness Convention over Configuration The menu is omakase No one paradigm Exalt beautiful code Value
Pryとは Rubyには、標準で付属されているirb(Interactive Ruby)というツールがあります。 consoleで、irbと入力するとirbが実行されます。 そこで、対話的にRubyの式を入力・実行することができます。 $ irb irb(main):001:0> 1 + 2 => 3 そして、Pryはirbの代替となるパワフルな対話ツールです。 なにがパワフルかというと次のようなことができます。 ドキュメントが見れる シンタックスハイライト デバッグができる(binding.pryをソース二記載するとブレイクポイントになる) $ pry [1] pry(main)> ls # 現在のスコープの変数とメソッドを表示 self.methods: inspect to_s locals: _ __ _dir_ _ex_ _file_ _in_ _out_ _pry_ 動作確認
最近覚えたデバッグ方法を、備忘のためにまとめておきます。 ログに出力する ActiveSupport::Logger#debugメソッドを使って、rails serverの標準出力にデバッグコードを出力する。 logger.debug(‘Hello world’) SQLを出力する ActiveRecord::Relation#to_sqlメソッドでSQLを出力する。 User.all.to_sql #=> SELECT “users”.* FROM “users” ブレークポイントを設定する コード内にbinding.pryというコードを書くと、そこまで実行中のプログラムが中断され、 以降をコンソール上からデバッグできます。 Gemfile gem ‘pry-rails’, group: [:development, :test] gem ‘pry-byebug’, group: [:d
$ rails s .rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/less-rails-2.7.0/lib/less/rails/railtie.rb:19:in `block in <class:Railtie>': undefined method `register_preprocessor' for nil:NilClass (NoMethodError) 2. 想定される原因 エラーが出るようになる前に、今回行った作業は下記2点 bundle update 'therubyracer', 'less-rails', 'twitter-bootstrap-rails'をbundle install bootstrapに関する上記3点のgemを取り除けば、railsコマンドは正常に動くようだ。 3. 原因の特定 2015/12/18にリ
はじめに ここ一年くらいずっと Rails の何がダメでどうすれば良くなるのかを考えていました。 Rails を使ってそれなりの規模のアプリケーションを作ったことがある人なら、メンテナンスのしづらさを感じたことがあるのではないでしょうか。 メンテナンスの問題は Rails 以外の開発でも発生することですが、実のところメンテナンスしやすいアプリケーションはどうすれば作れるのでしょうか? この難問に対して私も答えを持っていませんが、考え続けています。 少なくとも、 Rails Way や Rails Tutorial をベースにしたアプリケーション開発は、業務で用いるには簡単すぎるように思います。 「レールに乗る」という言葉がありますが、私は考え方を変えました。 Rails は規模の大きいフレームワークですが、土台に過ぎません。 Rails Way の設計方針は小規模な開発では有効ですが、規模
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く