Как использовать модель без контроллера в Ruby on Rails? - PullRequest
0 голосов
/ 16 сентября 2010

Я только изучаю Ruby on Rails (без опыта работы с Ruby) У меня есть эти модели (здесь для краткости не показаны миграции - это стандартные поля, такие как имя, город и т. Д.):

class User < ActiveRecord::Base
  has_one :address
end

class Address < ActiveRecord::Base
  has_one :user
end

Как использовать класс Address для управления данными базовой таблицы? Просто вызвать методы на это? Как мне передать параметры / атрибуты классу в этом случае? (поскольку у Address не будет контроллера для него (поскольку он предназначен для внутреннего использования)). Как можно делать что-то подобное?

1 Ответ

0 голосов
/ 16 сентября 2010
u = User.create :first_name => 'foo', :last_name => 'bar' #saves to the database, and returns the object
u.address.create :street => '122 street name' #saves to the database, with the user association set for you

#you can also just new stuff up, and save when you like
u = User.new
u.first_name = 'foo'
u.last_name ='bar'
u.save

#dynamic finders are hela-cool, you can chain stuff together however you like in the method name
u = User.find_by_first_name_and_last_name 'foo', 'bar'

#you also have some enumerable accessors
u = User.all.each {|u| puts u.first_name }

#and update works as you would expect

u = User.first
u.first_name = 'something new'
u.save

#deleting does as well

u = User.first
u.destroy

Это нечто большее, чем просто это, дайте мне знать, если у вас есть какие-либо вопросы о вещах, которые я не освещал

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...