おはようございます。仕事で2年ぐらい、8サイト連続ぐらいでRails使ってるのにあまり上達の見えないkomagataです。
そこで、Railsで不便に思っていること、他人に聞くに聞けないちょっとしたことなどを列記してみたいとおもいます。
- namespaceを含むscaffoldが不便。(scaffold Admin::Userとした場合、modelは普通のUserになってほしいが、Admin::Userになる。indexは/admin_users/indexみたいな感じになる。)generator書けば住む話だがめんどい。
- controllerのテストはfixtureを使うべきか、mock/stubのみを使うべきか。
- 初期データ(マスタなど)の登録はどのようにやるべきか。(今はfixtureとは別にdb/default/*.csvをおいて、migrationファイル内でFixtures.create_fixtures(db/default, users)などのようにしている。
- vimの場合、リファクタリングはどうやるのが便利か。(svn管理下ファイルのリネーム、クラス名、メソッド名の一括置換などがめんどい)
- ssl_requirementプラグインでのhttpsへのリダイレクトを伴う動きはどうやってテストするのか。
- IEでの警告回避のためのhtmlを使ってのhttpsへのリダイレクトを伴う動きはどうやってテストするのか。
- 単一テーブル継承を使った場合にいろいろとだるい。
- 継承したクラスの必須項目はRDBでnot nullできない(ちょっと気にかかる)
- 継承したクラスのbelongs_toとかのカラムがnot nullできない(同上)
- 外部キー制約とかが元クラステーブル名になる(あたりまえだけど)
- インスタンス変数を前提としたヘルパーを多用してよいのかどうか。(引数以外の値を利用するヘルパー)
- helper :allはデフォルトでは無くしてほしい。
- erb利用時のpartialなどのインデントがそろわない。
- content_for :fooなどを書いた場合、便利だがちょっとテンプレが汚れる感がある。
- title, meta_description, meta_keywordsの標準的な各ページでの指定方法はどういうやり方があるのか。
- パン屑リストの一般的な実装はどういう感じなのか。
- prototype, scriptaculous, RJSが使い辛い。
文句ばっかりですが、上記以外とても気に入っていますし、これがなきゃ開発したくないという要素も数えきれないほどあるのでプラス面の方が全然大きいです。
勉強会などにあまり出席したことがないのでいびつな使い方になってるかもしれません。「ここはこうやればいいよ」などのご指摘があればコメントいただけるとありがたいです。