自分で作ればタダ!

備忘録--文系営業からRuby on Railsのプログラムを書く人になりました。

ルーティング 複数ページにUpdateフォームがあって別のページに飛ばしたい時。

2時間半かかった。

 

こういうことだった。

 

① コントローラにUpdateアクション追加(ex:hoge_update)

② 追加したアクションをルーティングに追加(ex:PUT:hoge_update)

③ フォームは以下の様に

form_for @user,:url => url_for(:controller =>'mycontroller',:action =>'myaction')

参考:http://stackoverflow.com/questions/5320414/form-for-but-to-post-to-a-different-action

OmniAuth でFaceBook/Twitter認証

ソーシャルメディアでログインする必要がある時使います。

【参考】

http://tnakamura.hatenablog.com/entry/2013/01/13/204311

=>FacebookでログインDeviseと連携。

 

コンシュマー向けサービスを開発する時には必要か。でも今は法人向けばっかりだしな。

 

ちなみにTwitterでもログインできる。併用して一度バグったが何が原因だったんだろう。

 

http://easyramble.com/implement-devise-and-ominiauth-on-rails.html

 

Rails Production モードで起動

当たり前だが、Developmentで動いても、Productionで動かない事があったりするのは

ザラなので、(テスト書け。)一応コードのメモ。

 

手順1
環境変数RAILS_ENVにproductionを指定してmigrate実行

rake db:migrate RAILS_ENV=production


手順2
productionを指定してサーバを起動

rails s -e production

 

てな事で。自分の場合はHeroku にデプロイしたら動かない等はよくあった。でも原因はいつも自分で問題は単純だった。ひとつひとつ確認する事。

 

Heroku へデプロイ

今となっては、もはや何の問題もないがメモ。

 

【参考】

http://studio335.air-nifty.com/blog/2010/07/macheroku-7d58.html(デプロイまで)

 

また、このままやるとデプロイでエラーになる。これはAsset_Precompileが影響している。以下の2通りでエラーを回避する。

 

① Asset_Precompileをやめる。

https://devcenter.heroku.com/articles/rails-asset-pipeline(Heroku)

http://stackoverflow.com/questions/19650621/heroku-upload-precompiling-assets-failed

要はこう↓

# config/application.rb
config.assets.initialize_on_precompile =false

 

② Asset_Precompile する。

事前にローカルで行う。きっともっといい方法があるはず。自分が知らないだけ。

デプロイ時にやってくれるGemがあったと思うけど忘れた。と思ったら以下に書いてあった。Capistranoを使う。

http://d.hatena.ne.jp/tetsuyai/20110920/1316504421

デプロイはめちゃ早くなる。

bundle exec rake assets:precompile RAILS_ENV=production

 

 

Twitter BootStrap with Rails

画面のレイアウトを非常に便利に作成してくれるので、頼りっきり。

現時点でver3.xが出てるけど、自分はまだV2を使っている。そろそろ変えた方がいいんじゃないか。

 

自分はGemで入れてる。

 

【参考】

http://ppworks.hatenablog.jp/entry/2012/02/19/033644

http://php-fan.org/sample_code_demo/bootstrap-js.html

 

またiPadで表示するとなんか微妙に画面がダサい。従ってこの際PC版と同じ表示にしたほうが、まだマシなのでこうした。

http://sizx.hateblo.jp/entry/2013/08/28/105257

管理画面を作成するGem Typus

管理画面をさっさと実装したい時に利用するGem。

バージョンによってはエラーが出るので公式を確認した上で、最新版を入れるのが

良い。よくあるのは、Showが見れないとか、Editできないとかがあった。

なお、Will_pagenateに依存しているので忘れずに入れる事。

 

【参考】

https://github.com/typus/typus(公式)

http://yorunocafe.blogspot.jp/2011/08/rails-typus.html(使い方説明)

http://www.majin.jp/archives/146

 

使い方自体は極めて簡単。

Migration に非常に弱いので、自分で追加する必要があるが、逆にその方が良いと自分は思う。