Если логически продумать это, у автора может быть много страниц, и страницы принадлежат автору.Если это так, мы можем выразить это через отношения rails.
class Author < ActiveRecord::Base
has_many :pages
class Page < ActiveRecord::Base
belongs_to :author
Для поддержки этого вам необходимо создать миграцию, чтобы обеспечить наличие столбца author_id в таблице страниц.Rails позаботится обо всем остальном.Вы получите всю семантику отношений, например:
my_page.author.email
my_page.author.name
(при условии, что ваш класс Author имеет такие атрибуты)
Обратите внимание, что вам необязательно иметь класс Author, если вашПользователи ваши авторы.Если каждый Автор является Пользователем (и вы используете свой класс User для аутентификации и обслуживания учетной записи), вы все равно можете ссылаться на Пользователя как на Автора класса
class Page < ActiveRecord::Base
belongs_to :author, :class_name => "User"
, что позволяет вам сохранить семантику хорошего автораby делает их для вашего класса User.
Последнее замечание: если вы хотите автоматически удалять любые страницы, связанные с автором, при удалении объекта автора, вы можете добавить зависимость к классу Author
class Author < ActiveRecord::Base
has_many :pages, :dependent => :destroy