Kenji のすべての投稿

Rails seed から task を実行したときの方法


Rails の seeds.rb で task を実行したいとのことで、 やり方を調べました。

実践 Ruby on Rails
実践 Ruby on Rails 4 本格 Web プログラミング

環境

  • Ruby 2.2.2p95
  • Rails 4.1.8
  • Rake 10.4.2

rails g task sample shot とコマンドを実行して、タスクを作っておきます。 下のように。

タスク自体は bundle exec rake sample:shot で実行できます。 これを更に bundle exec rake db:seed とやったときにも実行されるようにするのが今回のゴールです。 おそらく、 rails のコード内から task を実行するのも似たような感じでいけると思います。

解決策

seeds.rb に下の記述を追加します。

環境 (test, development, production) は、 rake db:seed で設定されたものが引き継がれます。 上では SOMETHING'value' という値を設定しています。 rake db:fixture:load FIXTURES=xxxx で設定するようなやつです。


Xterm で日本語を表示した方法


ウインドウマネージャ openbox 上 で xterm を使っていると、 日本語の太字が文字化けして表示されないことがあります。 Ubuntu などに日本語環境をインストールして xterm を使ったりするとそうなります。 ここでは、私が xterm で日本語を表示できるようにした方法を紹介します。 (uxterm でも同じです。)

メニューの設定

xterm 起動時にオプションを設定することで日本語の文字化けを解消します。 そこで、 メニューから開かれる xterm のコマンドを変更します。 LXDE や gnome などの ウインドウマネージャ だと、 右クリックからプロパティを開いて変更できます。 そこでコマンドを xterm -fwb Sans にすれば、 ワイド文字の Bold は Sans が使われて表示されるようになります。

私の場合は、 openbox を使っていて、 更に “Terminal emulator” メニューで出てくる LXTerminal を xterm に変えたかったので下のようにしました。

このようにしてメニューを変更する準備をした上で、 ~/.config/openbox/menu.xml の該当箇所を xterm の機動コマンドに書き換えます。


CakePHP3 環境ごとに設定ファイルを分ける方法


CakePHP3 version 3.0.9 で環境ごとに設定ファイルを分ける方法について書きます。 FuelPHP だと app/config/development などの中に 上書きする設定ファイルを記述しますね。

CakePHP3 で環境ごとに設定ファイルを作る場合にも config/development というディレクトリを作って対処するのがいいと思います。 でも、既存のコードではできないので少し手を加えます。

続きを読む CakePHP3 環境ごとに設定ファイルを分ける方法

ssh 鍵のパスフレーズを忘れたら


ssh で鍵のパスフレーズを忘れること、ありませんか? 私は過去に2回ほどあります。 設定したパスフレーズではなぜか使えなかったり、パスフレーズをどこに控えたかを忘れてしまったり。 そんなときに、とても時間がかかりますがブルートフォースでパスワードを当てる方法があります。

続きを読む ssh 鍵のパスフレーズを忘れたら