息子は電車が大好で車に興味が無い

自分は子供の頃から車が大好きで、子供の頃はミニカーをねだってたもんなんだけど。我が子を含む最近の子供達には電車が大人気だ。プラレール大好きだ。何でかなー。とか思ってたんだけど。よくよく考えてみたら簡単な理由な気がした。単純に格好良い車が無…

fuelphpの環境をaws上に構築(でハマった所)

以前はsqaleを使っていたので素の環境から作ろうとすると意外とはまる。 こういう所はvagrantなりchefなりでなんとかするべきなんだろうな。 環境はAMI。amazonのデフォルト。 fuelphp1.6 apacheの設定で ドキュメントルートのディレクティブに AllowOverrid…

twitterbootstrapをスマホ対応する時に必要なmetaタグ

いつも忘れる。 <meta name="viewport" content="width=device-width" /> これでおk</meta>

rackupからsinatraを起動する

# coding: utf-8 # sinatra関連とactiverecord, mysqlのライブラリを読み込み require 'rubygems' require 'bundler' require 'sinatra' require 'sinatra/reloader' require 'active_record' require 'mysql2' # rackが起動するrubyアプリケーション # sina…

bundlerでgemをインストールする時のメモ(インストール先指定とか)

gemのインストールを管理してくれるbundlerがとっても便利なんだけど。 sinatraみたいな軽量な物を使うときにシステムのgem領域を汚したくない。とか 複数アプリケーションを動かすなんて事もざらに有るとおもう。 そういう時は bundle install --path gems …

sinatraからactiverecordを使ってるとActiveRecord::ConnectionTimeoutErrorと出る

ActiveRecord::ConnectionTimeoutError 何かよく解らないけどコネクションエラーが出る。 どうもコネクションプールの辺りに問題が有るらしいがそれくらい勝手になんとかしておいて欲しいと思うのが本音。。。 対応策としてはここに書いてあるのを参考にして…

sinatraからmigrationを使う

参考 http://blog.ruedap.com/entry/20110416/ruby_sinatra_active_record_3_migrate こっちのがシンプルそう http://materia.jp/blog/20121029.html

djangoのチュートリアル通りやってたらError: No module named pollsと出た

djangoを触ってみようと思って下記のサイト道りやってたら http://www.djangoproject.jp/doc/ja/1.0/intro/tutorial01.html#intro-tutorial01 モデルを有効にする で python manage.py sql polls Error: No module named polls ってエラーが出る。。。 結論…

capistranoのroleを動的に生成する

あんまり難しい話じゃなくて。 配列で受け取った値をどうやってroleにセットするのか解らなくてハマってた。 普通に書くとこうなるわけなんだが。 role :web, "hoge.jp", "foo.jp" 何かしらのwrapperを書いていて動的にroleを設定したい事が有ると思う。 こ…

githubへpushした時にawsからソースを取得する

AWSじゃなくても良いんですけどね。 githubにはservicehookというgitリポジトリのhooksみたいな機能がある。 リポジトリの画面からSettings(レンチのアイコン)→ServiceHooks→WebHook URLs の順序で辿って URLという欄に通知させたいサーバーのurlを記載する…

ruby gemをバージョンアップ, ダウンさせたい

バージョンダウンさせる 一旦アンインストールする gem uninstall -v 2.0.3 rubygems-update 好きなバージョンを入れる gem install -v 2.0.2 rubygems-update バージョンアップさせる バージョンダウンさせた時と一部同じ方法で(インストールとバージョン…

RubyOnRailsでsqlを直接指定する

極力ActiveRecordの標準に沿って書きたいけど、 やっぱ初動からそこを全部覚えるのが学習コスト高いなー。 と思ったら members = Member.find_by_sql( ["SELECT * from members WHERE name = ?", 'Taro']) こんな風に書ける。

Railsでちょこちょこ触りそうな予想のファイル#1

config/routes.rb # root to: "コントローラ名:アクション名"でドキュメントルート root to: "top#index" # httpメソット名 "パス名" => "コントローラ名#アクション名", get,post両方の場合はmatchを使う, asでアプリケーションから値が取れる get "about" …

ゆとり&LL房のPGがRaspberrypiを触ってみる#1

とりあえずハードウェアが届いたらSDカードにOSをフラッシュする mac os xでの実効 http://www.raspberrypi.org/downloads こっから 2013-05-25-wheezy-raspbian.img をダウンロードしてきて 自分の場合は Raw Images の下辺りに有った。 これをSDカードにフ…

Railsの<%= yield %>というモノ

Controller(アクション)からから呼び出されたテンプレートが作成するHTMLコンテンツが埋め込まれる。 現実的には app/views/layouts/ で使用されてアクション固有のビューを入れる。 layoutの指定仕方が有るからそれもメモしとかないと。。。

Railsでsmartyの拡張関数みたいのを作る

rails勉強中 railsでsmartyみたいにview側で使う関数を定義したい場合は このコントローラ/アクションで呼び出される関数を作る時は app/views/lesson/step15.html.erb このディレクトリにコントローラ_helper.rbで定義しておくと使える app/helpers/lesson_…

Bundlerについて

キーワードだけ聞いてたのでメモしとく。 rubyはgemっていうperlでいうcpanみたいなパッケージ管理がついていて、 このバージョンとかインストールとかを揃えるツール。 ラッパーみたいなもんかね。 Gemfile ってのが有って ここに source 'https://rubygems…

gitのリポジトリを作成した時にデフォルトのテンプレート(hooksとか)を設定する

リポジトリ共通のテンプレートが有るなら、 下記に書いておくと作成した時に適用される。 /usr/share/git-core/templates/ 多分一番使うであろうは /usr/share/git-core/templates/hooks ここのフックスクリプトでしょうね。

ユーザーを作った時のデフォルトホームディレクトリ構成を設定

.ssh/authorized_keys のようなファイルって必ず作るようなものなので。 雛形を作っておいてユーザー作った時に勝手に置いて欲しい。 /etc/skel/ 配下に /etc/skel/.ssh/authorized_keys って作っておくとユーザー作った時に作っておいてくれる。 便利便利。

useradd -dでホームディレクトリ作ったら公開鍵が見えなかった

解決策 setenforce 0 selinuxが効いてたせいなのね。。。 しょぼーん。 何でかはよくわからない。 どうも鍵にidのようなフダが付いて回るのが原因っぽいが。

ターミナルに入力中の文字を全部消す

入力中の文字を全部消したい delete押しっぱなしとかめんどい。そのためだけの覚え書き。 Ctrl + u

Vagrantでmountのエラーが出た

The following SSH command responded with a non-zero exit status. Vagrant assumes that this means the command failed! mount -t vboxsf -o uid=`id -u vagrant`,gid=`id -g vagrant` v-root /vagrant vboxの問題らしいので再ビルドしてみる。 sshでvag…

Vagrantのrootパスワード

デフォルトでは su - password vagrant で行ける。 手元の環境だからこのままで良いや。 覚え書き。

Redisでトランザクションっぽいものを実装する

# トランザクションっぽいのスタート multi # コミット exec # ロールバック discard ただし。ハードウェアクラッシュのようにRedisより下のレイヤーのクラッシュがあった場合は、 完了した所までコミットされてロールバックはされない。要は一貫性の保証は…

RedisでSortを触ってみる

ListとSetとSortedSetに使える # 昇順 sort list # 降順 sort list desc # 途中で切る sort list desc limit 0 3 # 文字列の場合 sort list alpha

Redisでハッシュを触ってみる

key:valueのvalueにさらにハッシュを持つ # 追加 hset ハッシュ名 キー 値 hmset ハッシュ名 キー 値 キー 値 # 取得 hget ハッシュ名 キー 値 hmget ハッシュ名 キー 値 ハッシュ名 キー 値 # キーの長さ hlen ハッシュ名 # キーの種類 hkeys ハッシュ名 # …

Redisでsorted setを触ってみる

バリュー値でソートされた値を保持 # 追加 zadd set名 バリュー値 キー値 # 削除 zrem set名 キー値 # ランクを表示, 保持値の順番を取り出す zrank set名 キー # 降順の順位を取り出す zrevrank set名 キー # バリュー値でソートして表示 zrange hs 0 -1 # …

Redisでset型を触ってみる

順番が保証されないlist型って事かな? # 追加 sadd set名 値 # 削除 srem set名 値 # 一覧 smembers set名 # 和集合 sunion set名 set名 # 積集合 sinter set名 set名 # 差集合 sinter set名 set名 # 集合から新しいsetを作る sunionstore myunion myset1 m…

Redisでlist型を触ってみる

# 配列に追加して行く # rなのは右から(末尾から)な操作 rpush mycolor pink rpush mycolor blue rpush mycolor green rpush mycolor red # 以下はleftのlじゃなくてlistのl # 要素を全て取り出す lrange mycolor 0 3 # これでも同じ lrange mycolor 0 -1 …

Redisを触ってみる

起動と接続 redisサーバー起動 redis-server /usr/local/etc/redis.conf redisクライアント起動 redis-cli Redisのデータベースを選択 # 1-15までがデフォルトで起動してる select 1 RedisでString型のインターフェースを操作してみる # 単一の値をセット, …