スペジェネ (2)

d:id:babie:20060207:p6 の続き。やっぱだめでした。わからなかったので、ベタで貼りますね。

$ ./script/generate special group
wrong number of arguments (1 for 0)

とりあえず、まず環境:

$ ./script/about
About your application's environment
Ruby version                 1.8.4 (i486-linux)
RubyGems version             0.8.11
Rails version                1.0.0
Active Record version        1.13.2
Action Pack version          1.11.2
Action Web Service version   1.0.0
Action Mailer version        1.1.5
Active Support version       1.2.5
Application root             /home/babie/rails/20060207-2-spegen/spegen
Environment                  development
Database adapter             sqlite3

sqlite3 ...

  • database.yml と DB
  • モデルのテーブル名
  • モデルの association 定義
  • Inflector での複数形定義(テーブル名で使用)

scaffold と jascaffold は動きました。ので、database.yml と DB については問題ないかと。

モデルのテーブル名:

CREATE TABLE favorites (
        "id" INTEGER PRIMARY KEY NOT NULL,
        "name" varchar(255) DEFAULT '' NOT NULL,
        "member_id" int DEFAULT 0 NOT NULL
);
CREATE TABLE groups (
        "id" INTEGER PRIMARY KEY NOT NULL,
        "name" varchar(255) DEFAULT '' NOT NULL
);
CREATE TABLE members (
        "id" INTEGER PRIMARY KEY NOT NULL,
        "name" varchar(255) DEFAULT '' NOT NULL,
        "yomi" varchar(255) DEFAULT '' NOT NULL,
        "comments" varchar(255) DEFAULT '' NOT NULL,
        "group_id" int DEFAULT 0 NOT NULL
);
CREATE TABLE songs (
        "id" INTEGER PRIMARY KEY NOT NULL,
        "name" varchar(255) DEFAULT '' NOT NULL,
        "group_id" int DEFAULT 0 NOT NULL,
        "content" varchar(255) DEFAULT '' NOT NULL
);
CREATE TABLE schema_info (
        version integer
);
INSERT INTO schema_info (version) VALUES (1)

(rake db_structure_dump を整形)


モデルの association 定義:

$ cat app/models/*
class Favorite < ActiveRecord::Base
  belongs_to :member
  validates_presence_of :name, :member_id
end

class Group < ActiveRecord::Base
  has_many :members, :include => "favorites", :dependent => true
  has_many :songs
  validates_presence_of :name
end

class Member < ActiveRecord::Base
  belongs_to :group
  has_many   :favorites, :dependent => true
  validates_presence_of :yomi, :name, :comments, :group_id
end

class Song < ActiveRecord::Base
  belongs_to :group
  validates_presence_of :name, :content, :group_id
end


Inflector は何もいじっておらずデフォです。


追記
あ! 重大なことを忘れてました。


  ☆ノノハ
  ノノ∂_∂∩  <ス
 
  ☆ノノハ
  川*^∇^∩  <ペ
 
  ☆ノノハ
  ル ’ー’リ∩  <ス
 
  ☆ノノハ
  州*‘ o‘∩  <ペ
 
  ☆ノノハ
   川´・_・∩  <シャ
 
  ☆ノノノハ
  从 ´∇`∩  <ル


  ☆ノノハ
  从*’w’∩ <ジェネレーション!
   ((つ  )〃
  (( (_) _)


これやってなかった! もう一度試してみます。


追記2
やってみましたが出来ませんでした。我流でやっているのでトーンが違うような気がします。Berryz 工房のどの CD を聞けば良いのでしょうか? 教えてもらえると幸いです。