Rails

Deviseで生成したパスワードを使ってPHPで認証する

参考 http://stackoverflow.com/questions/9321075/ruby-bcrypt-password-retrieval-in-…

Railsを80番ポートで起動するには

macにて。 デフォルトは3000番。 (! 501)-> rails s => Booting WEBrick => Rails 3.2.13 application starting in development on http://0.0.0.0:3000 => Call with -d to detach => Ctrl-C to shutdown server [2014-01-16 09:42:13] INFO WEBrick 1.3.1 …

関連のデータもサーバーに送るには

基本、ここに書いてあるとおり。 http://fits.hatenablog.com/entry/20120225/1330166288 ただし、サーバにrailsを使用している場合は、accepts_nested_attributes_forを使って、PUTしたデータを一度に更新したくなる。 ので、dataのkeyの部分は"_attributes…

zipのファイルサイズ

zipを作成してクライアントに返すようなcontrollerのコードがあって、 それに対応するrspecで以下のように書いていた。 レスポンスのzipファイルが想定するサイズか確認している。 describe "zipファイル" do before do get(:show, { :id => 1, :format => :…

Watir WebDriverのインストールに失敗する

bundle installするときにエラーとなった。 ... Installing ffi (1.9.3) Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension. /Users/h_yamaguchi/.rbenv/versions/1.9.3-p392/bin/ruby extconf.rb checking for ffi.h... n…

acts_as_paranoidを抽象クラスに適用すると検索に失敗する

抽象クラスを継承してクラスを作る。継承元の抽象クラスにacts_as_paranoidを適用する。 class Hoge < ActiveRecord::Base self.abstract_class = true acts_as_paranoid ... end class Piyo < Hoge ... def self.search where(...) end end こんな感じの実…

FactoryGirlでfixture_file_uploadが使えない

fixtures/images.rb include ActionDispatch::TestProcess FactoryGirl.define do factory :image do content { fixture_file_upload("/test/sample.jpg","image/jpeg", true) } end end こんな感じで、fixtures/test/sample.jpgを置いてspecを走らせてみた…

モデルにメソッドとか属性とかmixinしたい。

railsもruby初心者なのでいろいろ困ってます。 えっと、今やってるアプリケーションは"開始日"と"終了日"を持ってるモデルがたくさんあって、属性の名前も同じ、やってるバリデーションも同じ、やってる検索もだいたい同じ。だけど、今は全部コピペで記述し…

MongoDBなRailsでrspecしようとするとfixture_file_uploadが・・・。

fixture_file_uploadをrspec内で使用して、ファイルアップロードのテストを行おうとしたが、"file does not exist"って言われて、テストが失敗する。 Failure/Error: @file = fixture_file_upload "/stations/import.csv", "text/csv" RuntimeError: /statio…

ExtJS+Railsでdeployできない、まだ。

昨日、deployがうまく行かないと悩んでたけど、なんとかなりそうな雰囲気。 precompileでjsが1つのファイルにマージされちゃうとうまく動かないような気がするので、以下のようにしてみた。 app/assets/javascripts/application.jsで 以下の部分を削除して、…