0

mySQL データベースのテーブルの定義を読み取った後、Ramaze の続編モデル ファイルを生成できる Ruby クラスを探しています。たとえば、次のように入力します。 ruby mySuperGenerator.rb "mytable"

そして、結果は「モデル」ディレクトリのファイル「mytable.rb」になり、次のものが含まれます。


class Mytable < Sequel::Model(:mytable)
  # All plugins I've defined somewhere before lauching the generator
  plugin :validation_helpers
  plugin :json_serializer
  one_to_many :othertable
  many_to_one :othertable2

  def validate
        # Generating this if there are some not null attributes in this table
    validates_presence [:fieldthatshoulnotbenull1, :fieldthatshoulnotbenull2]
    errors.add(:fieldthatshoulnotbenull1, 'The field fieldthatshoulnotbenull1 should not be null.') if self.fieldthatshoulnotbenull1.nil?

  end

  def before_create
    # All the default values found for each table attributes
    self.creation_time ||= Time.now
  end

  def before_destroy
    # referential integrity
    self.othertable_dataset.destroy unless self.othertable.nil?
  end
end

そのようなジェネレータが存在するかどうか誰かが知っていますか?

4

1 に答える 1

1

うーん...やっとスクリプトを書きました。https://github.com/Pilooz/sequel_model_generatorを参照してください。

于 2012-04-25T08:34:53.777 に答える