2013-01-01から1年間の記事一覧

A template needs to have a virtual path in order to be refreshed

Rails 4.0.0.rc1データベースに入れたerbを解釈して欲しい時は <%= render :inline => block.body %> のようにすればよい。でもnilが入っていると、 A template needs to have a virtual path in order to be refreshedと出る。 わっかりにくいエラー。

ホームページつくった

http://jiikko.meサーバはレンタルサーバ(Gehirn RS2)。 Bitbacketのプライベートリポジトリにソースおいてる。 デプロイはcapistrano使ってる。 ドメインはお名前.comドメインとサーバは、確か半年前くらいから借りていて、当時はサーバに直接入って作業し…

モデルの中からcurrent_userを見たい

ぐぐると解決できそうな記事が多いけど、それぞれ微妙に実現方法が違う。ぱっと見、行数少なくていいなと思ったのはactive_scaffoldを使うやつ。 http://kingyo-bachi.blogspot.jp/2012/09/activescaffold.html でもActiveScaffoldがRails4対応してなかった…

sorceryのブルートフォースアタック対策モジュールを使ってみた

Rails 4.0.0.rc1 sorcery (0.8.1) はじめに ブルートフォースアタックとは、手当たり次第パスワードの入力を試みる攻撃方法。こわいです。 (http://ja.wikipedia.org/wiki/総当たり攻撃) sorceryとは シンプル認証ライブラリ。 コア以外の機能は、サブモジュ…

焼きそばの麺にカレールー入れるとうまい

焼きそばって3食入って100円だし、炒め物と仲良くなりやすいのでとても便利だ。 だが炒め物と言っても、キャベツかもやしとかしか選択肢はない。 そこで最近編み出したのが、カレールーをぶち込むこと。 とてもおいしいくてパスタを食べてるっぽい。ハヤシラ…

rake db:migrate:redo

Rails3からだったかマイグレーションにchangeメソッドが追加された。 このchangeメソッドは、バージョンをあげる時はchangeの中を実行して、バージョンを下げる時は逆のことをしてくれる。かしこい。 でもこれは、データベースにカラム、状態、テーブルに追…

Rubyistビギナーが最近Rubyを書いてて思ったこと

Ruby、どんなに汚くても動くけど、翌日その書いたコードを見ると理解するまでに時間がかかることがよくある。 たぶんこれって可読性がないから。 コードの消費期限をあげるためとか最近自分が意識していること 適切なメソッドを使う イテレータは、論理判定…

Hash、Arrayでソート

Ruby2.0.0p-0 たまにすごく使うのでメモ。 sort_byはブロックに与えられた値でソートするっぽい。ベンリー。 Hash hash = {"宗教"=>5, "墓石"=>1, "お骨"=>4, "お寺"=>3, "施設"=>1, "檀家"=>1} キーでソート hash.sort_by{ |key, value| key } # => [["お寺…

has_oneテーブルの必須データを作成する

少し規模が大きくなると、新しくhas_oneテーブル必須の作りにしたい時に関連コード修正は骨が折れる。 そういう時はモデルのコールバックでhas_oneレコードを作れば楽。 class Book < ActiveRecord::Base before_create :create_recommend_ship end http://s…

Rubyで正規表現を使ったメモ

ruby2.0.0正規表現を使う時はいつもググっていたけど最近ようやく手に馴染んできた。 パーセント(%)記法 %記法を使うことで区切り文字を任意のものを使う事ができる。 デフォの/だと、式中のスラッシュをエスケープする必要があるので、別の区切り文字を使っ…

帰省しました2013

フェレットかデグーを飼いたいjiikkoです。上京してから2年2ヶ月が経ちました。早い。 札幌Ruby会議ぶりの札幌なのでたしか半年ぶり。おかんとおとんがとても喜んでいました。 テレビが壊れたとのことなので買い替えの手伝いとか、仕事の話を聞いてあげたり…

hamlからerbに変換する

hamlを使おうと思ったものの慣れなかったので速攻戻した。 ググるとerb→hamlはたくさんあったけど、その逆は英語の記事しかなったのでメモ。変換にはhaml2erbというgemを使う。 公式を見ると1.9.1でのテストはやったよとのことなので1.9.1を使う。 $ rvm use…

Virtualboxのストレージを拡張する

Virtualboxでストレージを拡張しようした。 でも、*.vmdkをresize(拡張)しようとすると以下の出力して拡張できなかった。 > VBoxManage modifyhd windows_xp_ie6-disk1.vmdk --resize 16000 0%... Progress state: VBOX_E_NOT_SUPPORTED VBoxManage: error: …

デビアンで日本語キーボードに設定・変更する

LinuxのUbuntuやDebianで日本語キーボードに設定・変更する vi /etc/default/keyboard下記に変更 XKBMODEL="jp106" XKBLAYOUT="jp" 参考記事 http://www.miuxmiu.com/archives/2011/05/31/linux_ubuntu_debian_japanese_keyboard_settings_change_command.ht…

正規表現でキーワードリンクする

ruby-2.0.0-p0正規表現を使ってキーワードリンクをやってみた。 動かす予定の環境のキーワード数は今のところ、400個くらいなので正規表現でまだ許容範囲だと思っている。 5000とかいったらtrieを使ってやるしかない感じっぽい。 def auto_word_link body wo…

部屋を模様替えしました

window.twttr = (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0], t = window.twttr || {}; if (d.getElementById(id)) return t; js = d.createElement(s); js.id = id; js.src = "https://platform.twitter.com/widgets.js"; fjs.paren…

debianで日本語の文字化け直す

$ apt-get install ttf-sazanami-gothicこれを入れればオッケー☆試しにmecabで日本語入力のテストをしてみた。 $ mecab 東中出身、涼宮ハルヒ。ただの人間には興味ありません。この中に宇宙人、未来人、異世界人、超能力者がいたら、あたしのところに来なさ…

railsでエイジャックス

Rails 4.0.0.beta1 $().jquery # => "1.9.1" 膨大なアイテムの中から、絞り込みをかけてからひとつづつアイテムを追加したり削除したりしようとすると、 controllerが太ると思ったのでしぶしぶajaxを使った時のメモ。 ここでは、非同期リクエストを投げて、…

Wordpressから記事とカテゴリとカスタムフィールドとアイキャッチ画像パスを取得するSQL

Wordpressのデータベースから記事、カテゴリ、タグ、アイキャッチ画像、カスタムフィールドを取得した時に使ったSQLを書いていく。 誰かの参考になれば。 以下のSQLは自分の環境での話なのでWhere句を変更すればだいたいどの環境でも似た結果が得られると思…

CSVのヘッダーをハッシュのキーとして使って行の要素にアクセスする

ruby-2.0.0-p0 CSVを読み込む時に配列要素番号で拾うと後で読む気がしなくなります。 # test.csv id, name 1, a 2, b 3, c# array_to_hash.rb require "csv" csv = CSV.open("test.csv") header = csv.shift csv.each do |row| p Hash[header.zip(row)] end …

ActiveRecordのid自動採番を設定し直す

(ActiveRecordに限った話ではないんですが) 環境 postgresql (9.2.3) activerecord (4.0.0.beta1) 概要 seed.rbだとかで訳あって、本来ならインクリメントされていくidに対して数値を指定してレコードを作成した場合、のちのちでidが被ってしまうのでそれを…

gemの出すWarnignを消したい

gemのWaringログがターミナルに溢れていたのでWarnignがでないようにgemをアップロードしました。 warningログは以下のようなやつ。 DEPRECATION WARNING: Returning a hash from a #scope or #default_scope block is deprecated. Please return an actual …

Paperclipの画像を扱うクラスをimageにしたらハマった

公式はavatarというクラス名でUsageを解説しているけど、 自分の場合は、avararという名前よりもimageという名前の方がしっくりしたのでimageモデルに画像を持たせることにした。アップロードをすることができたのだけど、urlメソッドが見つからない。なので…

CSVでエクスポートしたカスタムフィールドを含めた記事レコードを1行に加工した

Wordpressに入っている記事テーブルをRailsアプリに移行しようとしている。 WPってカスタムフィールド機能があるので、記事とカスタムフィールドのレコードを取り出すのが苦戦した。以下にその思い出綴ります。 以下のSQLは記事で使っているカスタムフィール…

レイアウトを適用している静的ページにパンくずを動的に表示させる

http://ubichupas.blogspot.jp/2011/07/rails3.html そもそも静的ページを表示するには、controller、テンプレート、routeを以下のように作成・修正します app/controllers/pages_controller.rbを作成 class PagesController < ApplicationController layout…

Wordpessのデータベーウから、指定したタグ・カテゴリの記事を取得するSQL

SELECT wp_posts.*,wp_posts.guid , wp_term_relationships.* /* フィールドを指定 */ FROM wp_posts, wp_term_relationships /* テーブルを指定 */ WHERE wp_posts.ID = wp_term_relationships.object_id /* テーブル同士の結びつけ */ AND wp_term_relatio…

csv読み込んで1レコードを1ファイルに吐き出す

ruby1.9 以下のようなcsvファイルを読み込みこんで、レコード毎に1ファイル書き出す。 post_name, post_title, post_content aaa, bbb, ccc aaa, bbb, ccc aaa, bbb, cccrequire "csv" require "FileUtils" csv = CSV.open("park.csv", "r") csv.shift dir =…

社会人生活とかの振り返り

2009年4月〜2010年4月 ピュアPHPで書いた掲示板を大学の一部友人に使ってもらってプログラミングを楽しく感じる 目の前でセキュリティの脆弱性を攻撃されて辱められる 2011年3〜4月 大学卒業 IT業界デッビュー 2011年7月 社内研修でRails3に初めて触る 意味…

mysqlのデータベースをローカルでリストアする

サーバのデータベースの状態をローカルでとても作りたくなりました。 ダンプとる $ mysqldump --default-character-set=utf8 -u ユーザ名 -p DB名 > 出力先ファイル名文字化けする可能性があるらしいので文字コードを指定した方が安全っぽい。 リストアする …

nginx: [warn] conflicting server name "localhost" on 0.0.0.0:80, ignored

nginx.confの同じポートでserver_nameディレクティブが被っているよ、というメッセージだった。 ポートをずらしたらタイトルの警告は消えた。 参考 http://stackoverflow.com/questions/11426087/nginx-error-conflicting-server-name-ignored