Кто-то, пожалуйста, объясните выбор / опции для форм в рельсах 3 - PullRequest
2 голосов
/ 22 апреля 2011

Хорошо, да, я идиот. У меня приличный опыт работы с рельсами, но я не могу выбрать опцию, чтобы работать так, как я хочу.

Все, что я хочу, это простой выпадающий список для :experience со следующими значениями:

'Experience...'  Value: 0
'Beginner'       Value: 1
'Advanced'       Value: 2
'Expert'         Value: 3

В жизни я не могу получить значение для сохранения в базе данных. Любая помощь высоко ценится.

Спасибо.

Ответы [ 3 ]

5 голосов
/ 22 апреля 2011

Обычно я действую следующим образом:

на мой взгляд

<%= f.select(:name,  MyModel::CONSTANT, {:include_blank => 'Select...'}) %>

в моей модели:

CONSTANT= [["Experience", 0], ["Beginner",1]]

Важно разделять данные между моделью и представлением.

3 голосов
/ 22 апреля 2011

Я полагаю, что вы можете просто сделать что-то вроде:

<%= f.select(:experience, [["Experience", 0], ["Beginner",1], ["Advanced", 2], ["Expert", 3]]) %>

РЕДАКТИРОВАТЬ 2: Убрал тэг опций (теперь он должен быть необязательным), и мы сделаем его простым.

2 голосов
/ 22 апреля 2011

+ 1 к Джастину. Вы также можете:

@levels = ['Experience', 'Beginner', 'Advanced', 'Expert']

<%= f.select(:experience, @levels.map {|level| [level, @levels.index(level)] }) %>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...