覚え書き

CakePHP3でのマイグレーションについて最低限の事だけ書いておく

参考 http://book.cakephp.org/3.0/ja/migrations.html http://qiita.com/ran/items/c45d0228858accea0e86 まずは現在のステータスを確認 bin/cake migrations status マイグレーションファイルを作成する 引数にカラム名と使える方を渡しておくと雛形作って…

CakePHP3でのリクエストパラメータの取り方

基本的な事 HEADER $this->request->header('X-HOGE'); POST $this->request->data('postのキー'), リクエスト(URL)パラメータ アプリケーション側で名前つきで扱いたい時のマッピング /config/routes.php に $routes->connect('/hoge/foo/:bar_number', ['c…

ElasticBeanstalkでEnvironmentsが削除出来ない時

Deleting security group named: *** Reason: Group *** is used by groups: のようなメッセージが出てしまいEnvironmentsが削除出来なくてハマった。 直接セキュリティグループを探し当てて削除しようとしても 「使ってるからダメ」と言われる。 どうすりゃ…

ec2sshを試してみた

結論 チョー便利。 大まかには作者のブログに乗ってるんですが一部訂正が必要だったので。 http://blog.mirakui.com/entry/20101205/1291551625 概要 中身はgemのライブラリです。 sshでec2に接続する時は ~/.ssh/config を設定して ssh app1 とかでつなぐと…

Postfix入れるならsendmailをアンインストールしとく

yum remove sendmail それだけっちゃそれだけ。 サービス起動してもエラーを履く。

ec2インスタンスのセキュリティグループは後から変更出来ない

タイトルの通り。 amiを吐き出してもう一度インスタンスを作り直すしか無いみたい。。。 セキュリティグループのルール自体を変える事は出来るけど、 このインスタンスだけ変えたい(新しく作ったセキュリティグループを適用したい) が出来ない。。。 むー…

xcode5&iOS7でアプリのアイコンを設定する

どっから設定するのか解らなかったら イメージとかを保存しているディレクトリに(多分どこでも良い) icon.png って名前で保存すればアイコンとして使ってくれるみたいだ。 xcodeの話なのかiOSの話なのか解らないけど、 iOS開発は完全に素人なのでまあとり…

Vagrantで起動と同時にプロビジョニングする

1.3以降はprovisionがオプションになったらしい。 まあその方が正しいか。 vagrant up --help [outsource_shell] Usage: vagrant up [vm-name] [options] [-h] --[no-]provision Enable or disable provisioning --provision-with x,y,z Enable only certain…

fuelphpでレンダリングにかかった時間と使用しているメモリを表示する

こんな感じでviewに書くと勝手に出してくれるっぽい。 Page rendered in {exec_time}s using {mem_usage}mb of memory.

fuelphpでテンプレートにバージョンを出す

あんま使う事無いだろうけど。 覚え書き。 こんな感じ。

fuelphpで管理画面を作ってみる

参考 http://qiita.com/hokutoasari/items/6a39ee7524e679c6152a http://blog.kinjouj.net/fuelphp-29-ormauth.html Ormのログイン機能を使う編集(OrmAuthを導入する) fuel/app/config/auth.phpを編集 driver' => 'Ormauth', とする ログイン機能を使うdbを…

fuelphpに適用したtwitterbootstrapをレスポンシブにする

fuelphp1.6で確認済み。 scaffoldでテンプレートを作った場合 fuel/app/views/template.php を読み込んでるのでここに <meta name="viewport" content="width=device-width" /> これを足してやる。 これでOK</meta>

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

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

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を設定したい事が有ると思う。 こ…

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で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 …

macにbrewでRedisを入れたらファイル書き込みエラーが出た

サーバー起動した後にクライアントから bgsave で動かしたら Background saving error って出たから 設定ファイル覗いてみたら vim /usr/local/etc/redis.conf dir /usr/local/var/db/redis/ こんな風に指定されてたので。 該当箇所を書き込み可能にしたらOK…

Hadoop HDFSコマンドメモ

hadoopコマンド使ってファイルをとりあえず触ってみるコマンド ファイルリスト表示 hadoop dfs -ls ファイルコピー hadoop dfs -get [元][先] hadoop dfs -cp [元][先] ファイル移動 hadoop dfs -mv [ファイル] その他同様にrm, mkdir, rmr(ディレクトリ削除…

Vagrantで"The guest additions on this VM do not match the install version of VirtualBox!"と出たら

こんな感じのメッセージが出た場合 [default] The guest additions on this VM do not match the install version of VirtualBox! This may cause things such as forwarded ports, shared folders, and more to not work properly. If any of those things …

vagrantのイメージ(OS)の管理

vagrant box add box名 vagrant用OSイメージのURL で追加出来る。 box名はgitのリモート名みたいなもんで、 複数持つ事が出来る。 vagrant的にはboxという単位でOSを管理してる。 恐らくVagrantファイルでこの名前を使って起動するOSを決めてるっぽい。 (本…

vagrantでサーバーの起動,停止, 破棄

vagrantの設定ファイルを置いてあるディレクトリで 自分の場合 ~/vagrant/Vagrantfile のディレクトリで 起動 vagrant up 停止 vagrant halt 破棄 vagrant destroy もうちょっと使ってみたら設定からまとめてみる。

Rubyのハッシュからキーと値を取り出すパターン

ハッシュ 配列として イテレータとして キーを取り出す keys each_key | キー| 値を取り出す values each_value| 値| [キー, 値]のペアを取り出す to_a each{| キー, 値|} each{| 配列|} 実際のコードでは eachでループする事が多そう。

Ruby1.9で文字コードを指定する(日本語扱う)

# -*- coding: utf-8 -*- 後はコードを書くだけ。

Rubyで数え上げる

ループのさせかた色々あるみたいで。 # iをインクリメントしながら10を超えるまで繰り返す ary = [] 10.times do |i| ary << i end p ary # iをレシーバーの値からインクリメントしながら10になるまで繰り返す # iがuptoの引数を超えるまで繰り返す ary = []…

RubyのArrayクラスのpushと同じメソット

ary = [] ary << "hoge" こう書ける。 書き方が多いのは慣れれば良いんでしょうが。。。

Rubyのcatchとthrow

def est_throw # catchで指定したものと同じシンボルが指定されてるから呼び出し元のブロック終了 throw :test end puts "test start # ブロックの同じシンボルを引数にしてthrowを呼ぶとブロックを終了 catch(:test) do puts "before test_throw()" # メソ…

Rubyのクラス継承の書き方

MyError = Class.new(StandardError) こんな風に書いておくと class MyError < StandardError end と同じ意味になる。 何も変えない時に使えるみたいだけど。 何も変えないのにどう使うんだろ。。。 読み方として書いておく。

Rubyの標準出力(print,puts)とカンマ,の関係

ただの文法の話 print "Hello", "Ruby\n" こんな風に書いて ruby hello.rb とすれば HelloRuby と出力される。 putsでやれば多少便利かも。 puts "Hello", "Ruby\n" Hello Ruby こうなる。 便利なんだかどうなんだかよく解らない。

sqaleでfuelphpの.htaccessを開発環境と本番とで分ける

http://go-surftrip.hatenablog.jp/entry/2013/05/08/235026 これの続き↑ これでデプロイ完了した時にシンボリックリンクを貼ってくれる はずなのにshellが動かない。。。何故だ。。。追加で問い合わせ中。 相変わらず早い。 翌日に帰ってきた。 完全に勘違…

Rubyのモジュールについて

クラスとの棲み分けがまだわかってないが。 module HelloModule Version = "1.0" # 定数定義 def hello(name) # メソット定義 print "Hello,",name, "\n" end module_function :hello # helloをモジュール関数として公開する end p HelloModule::Version Hel…

rubyのインスタンスメソットをまとめてアクセス制限する

1つ1つであれば class Hoge def pub puts "this is public" end public :pub # pubメソットをpublicに設定 def priv puts "this is private" end private :priv # privメソットをprivateにする end まとめて指定したい場合 class Hoge public # 引数を指定…

fuelphpの環境毎設定

fuelphpの環境毎に設定変えるには(dbの接続情報) 開発環境 fuel/app/config/development/db.php 本番環境 fuel/app/config/production/db.php にそれぞれ設定しておいて(名前のつきかたはイディオム) それぞれのサーバー内にあるこのファイルを設定する。…

rubyのクラスメソット

クラスに関連する操作をするためにクラスメソットを定義する。 んで。このクラスメソットの定義方法は def クラス名.メソット end になる class HelloWorld def HelloWorld.hello() print 'hello' end end こんな感じ。 クラス定義の中のselfはその暮らすオ…