Рубиновые ассоциации без Rails - PullRequest
2 голосов
/ 16 февраля 2012

В Rails очень легко делать такие вещи, как User.first.monkeys.first.uncle и т. Д.

Как я могу получить эту удивительность без Rails и без базы данных?Я заметил, что есть ActiveModel, но, насколько я могу судить, он не поддерживает ассоциации.

Я хотел бы иметь возможность делать такие вещи:

foo = Foo.new

foo.bars
# => []

foo.add_bar(:a => 'a')
foo.bars
# => [#<Bar @attr={:a=>'a'}>]

foo.bars.first.bazs
# => []

foo.bars.first.add_baz(:b=>'b')
foo.bars.first.bazs
# => [#<Baz @attr={:b=>'b'}]

foo.bars.first.foo
# => [#<Foo>]

Заранее спасибо.

1 Ответ

3 голосов
/ 16 февраля 2012

Почему бы просто не использовать базу данных в памяти вместе с ActiveRecord и SQLite ?Вам не нужно импортировать все Rails только для того, чтобы использовать ORM.Вы также можете использовать альтернативу, такую ​​как Sequel или DataMapper , в зависимости от ваших предпочтений.

...