New-Village

月間ブログ。だいたい1カ月に1回は更新しているようです。

Play Framework 2.3 の事始め

これまでRailsを趣味でやってきましたけど、
お仕事はパッケージベンダーなので、どうしてもエンタープライズの技術仕様に振り回される部分があって、RailsというかRubyを使う環境には恵まれませんでした...。

趣味を突っ走るのもいいですが、趣味と実益を兼ねるのがポリシーなので、JavaMVCフレームワークである"Play framework"に手を出してみることにしました。

さて、早速セットアップに入っていきます。構築する環境はMac OS X Yosemite (10.10.1)です。基本的には公式サイトのセットアップ手順に従っていますが、環境およびソフトウェアバージョンによって、一部内容を変更しています。

続きを読む

MACのSSHが勝手に切断される

MACSSHを使っていて、たまにターミナル以外の作業をしていると、以下のようなエラーを出して、SSHが切断されてしまう。

[server@centos ~]$ Write failed: Broken pipe

この問題は、MACのターミナルで以下の通り操作することで解消できる。

New-Village:~ New-Village$ echo ServerAliveInterval 30 >> .ssh/config
New-Village:~ New-Village$ chmod 600 .ssh/config

これで30秒おきにサーバーに対してシグナルを発信するので、操作していなくてもSSHが自動切断されなくなります。

 

 

 

Updateとupdate_attributeの比較

UpdateとUpdate_attributeはともに、単一のカラムを更新する際に利用するメソッドである。その違いは、モデルによるヴァリエーションが適用されるのがUpdateで、適用されないものがUpdate_attributeである。

プロセス及び処理時間にどんな違いが出るのか、今後の為にログをメモしておいた。

 

続きを読む

Masonryを使って可変レイアウトを作成

Masonryを使って可変レイアウトを実装してみました。

画面サイズの変更はもちろんのこと、色付きのタイルをJavascriptで削除すると、再計算が走って、タイルが再構成されます。

f:id:New-Village:20140906235636p:plain

 

続きを読む

gemfileのインストール場所を変更する

Nitrousに限りませんが、無償でNitrousを使っている場合には、ひとつのBoxの中で複数のアプリケーション開発することになります。この場合、各Railsアプリケーションは、それぞれのgemfileを通じてライブラリをインストール、利用することになりますが、すべてのライブラリが全てシステムフォルダ内に格納されます。

~/workspace/xapp9(master)$ gem which rake
/home/action/.parts/packages/ruby2.1/2.1.2/lib/ruby/2.1.0/rake.rb

コンフリクトしたりすることは基本ありませんが、安全なアプリ開発をするために、各Railsアプリケーション内部にgemfileのライブラリがインストールされるように設定を変更します。方法は、bundle installを以下の通り、オプションをつけて実行するだけです。

 

~/workspace/xapp7(firstview)$ bundle install --path=vendor/bundle --without production

 

続きを読む

Rubyのバージョンを変更する

gemfileを以下のように記載して、bundle installしたら、

利用しているRubyのバージョンと、Gemfileで指定したRubyのバージョンが異なっているというエラーが発生しました。

~/workspace/xapp7(firstview)$ bundle install --path=vendor/bundle --without production
Your Ruby version is 2.1.1, but your Gemfile specified 2.1.2

そこで、Nitrousのドキュメントを参考にRubyの利用バージョンを変更してみました。

 

続きを読む