RoR: Пользовательское обновление для записи - PullRequest
0 голосов
/ 13 августа 2010
questions
---------
id
topic_id
created_by
created_at
question_text
closed_by
closed_at
response_text

Появляется во вложенной таблице под таблицей topics.

Я могу легко создать question, я просто должен исключить :created_by, created_at, closed_by, closed_at, response_text из config.create.columns.(created_at и created_by заполнены before_create_save(). Таким образом, единственное поле, которое фактически заполняет пользователь, это question_text.

Следующим шагом будет создание действия «Ответить» (вместо «Edit "), который был бы очень похож на :update с некоторыми отличиями. Форма этого действия исключала бы все поля, кроме response_text. before_respond_save() будет заполнять closed_by и closed_at.

Есть ли способ сделать это без создания пользовательских видов (.erb, .rhtml) рукой?

(Короче говоря: есть ли способ выйти из "CRUD" aнемного, но не все делает вручную?)

РЕДАКТИРОВАТЬ: Пример для исключения

active_scaffold do |config|
  # ...
  config.create.columns.exclude [:created_by, :created_at, :closed_by, :closed_at, :response_text]
  # ...
end

1 Ответ

0 голосов
/ 30 августа 2010

Я отказался от решения проблемы таким образом. Как я считаю, нынешняя среда не поддерживает мой подход. Вместо этого я продолжал писать формы. См. RoR: как обработать отправку пользовательской вложенной формы

...