shellを複数起動する方法
複数shellを起動しようと、M-x shellと実行すると、すでに起動しているshellが開いてしまいますが、
C-u M-x shell
こちらのようにすると新しいバッファーで起動することができます。
My Link Orderプラグインが動作しない場合
お久しぶりです。
いきなりwordpressネタです。
wordpressではリンク集を作成する機能があるのですが、並び替えができません。
カスタマイズするまでもないので、プラグインで対処しようと思い、「My Link Order」を導入しましたが、表示の際、管理画面で設定した並び順で並びませんでした。
どうやら最新バージョン(現在3.3.2)ではテンプレートへ記述する関数が違う模様。
以前
wp_list_bookmarks('category_orderby=order&orderby=order')
最新
mylinkorder_list_bookmarks('category_orderby=order&orderby=order')
念のためメモ
2012/02/17進捗
自分でサービスを開発するってことは、納期がないってことで
こだわろうとすればとことんこだわることができるけど、
どこで切り上げるかという判断が難しくなりますね
だからこそ、セルフマネージメントが必要なんだなあー
ってことで、上司に作業報告をするかのごとく、ブログに作業報告をしようと思います
作業進捗
- 画面仕様作成中
- DB設計中
- ログイン機能を開発中
- Rails3.2のセッションまわりを読んだり
- TDDで進められるところは進めたり
…終わったとこないし
ちょっと勉強範囲広げ過ぎかな
validation一覧
validation一覧です。Rails3より、
validates_presence_of :title
というような記述が、
validates :title, :presence => true
という方式に変わりました。
validationの一覧
チェックしたか
- :acceptance => ture
確認入力
- :confirmation => true
範囲に入っていないか
- :exclusion => { :in => %w(admin superuser) }
範囲内か
- :inclusion => { :in => 0..9 }
フォーマットが正しいか
- :format => { :with => /\A([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})\Z/i, :on => :create }
正規表現で設定します
<オプション>
- with
指定した正規表現にマッチする
- :without
指定した正規表現にマッチしない
長さのチェック
- :length => { :maximum => 30 }
数値のチェック
- :numericality => true
<オプション>
- :only_integer
integerのみ
- :greater_than
設定数よりも大きい
- :greater_than_or_equal_to
設定数以上
- equal_to
設定数と同じ
- less_than
設定数よりも小さい
- less_than_or_equal_to
設定数以下
- odd
奇数
- even
偶数
入力があるか
- :presence => true
重複がないか
- :uniqueness => true
<共通のオプション>
- :on
validateのチェックをするコンテキストを明示的に設定(デフォルトはsave)
- :allow_nil
nilの場合はvalidateのチェックをしない
- :allow_blank
blankの場合はvalidateのチェックをしない
- :if
例えば、
validates :password, :presence => { :if => :password_required? }, :confirmation => true
のように使用する
- :unless
ifの逆
allocateとnew
rubyのallocateとnewの違い
class Blog def initialize p 'initialize!' end end a = Blog.allocate p '*' * 10 b = Blog.new
結果
"**********" "initialize!!"
開発進捗
開発するサービスのプラットフォーム選定&外部設計(手書き)&詳細設計(DB定義)を平行してやっています。
勉強することが目的なんで、寄り道しながらじっくりと進めています。
どこかでうまくアウトプットします。
ちなみに今日は気分を変えてRails3.2のActiveRecordをコード読んでました。やっぱり他の人のコードを読むのは勉強になるね。
scaffoldとそのデプロイメモ
長文をかく時間がなく、取り急ぎメモまで
rails _3.1.0_ new blog cd blog
Gemfileの以下の部分を
gem 'sql'
から
group :production do gem 'pg' end group :development, :test do gem 'sqlite3' end
に変更
bundle install git init git add . git commit -m "init" heroku create --stack cedar rails g scaffold blog title:string comment:text git push heroku master heroku run rake db:setup
pushしようとするとエラーになる。
せっかくなのでサービスを立ち上げようと思っているのですが、下準備としてHerokuの勉強をしています。
windowsで開発しようとすると、大抵エラーに悩まされますね。
で今回遭遇したエラーは
git push heroku master
をしようとすると、
Permission denied (publickey). fatal: The remote end hung up unexpectedly
となるものです。
これはどうやら、sshの公開鍵の作り方に問題があるようで(Git GUIから作っていました)、Git Bashより以下のコマンドを実行して再度作成すると解決できました。(windowsのせいではないか…)
ssh-keygen -t rsa
その後以下のコマンドでファイルを更新することも忘れずに~
heroku keys:add
Linuxの開発マシン、やっぱり必要だなー