У меня есть модель телефона для телефонов в моей Thats приложений, построенной следующим образом:Виртуальных атрибутов и Rails
t.column :number, :string
t.references :phoneable, :polymorphic => true
Я хочу, чтобы ограничить число, чтобы быть в формате 317.555.5555x234, поэтому я создаю форма с четырьмя ящиками (код города, 3 цифры, 4 цифры, внутр):
- form_for @user do |user_form|
-user_form.fields_for :phones do |phone|
= phone.text_field :area_code
= phone.text_field :first_three_digits
etc...
Я предполагаю, что виртуальный атрибут будет маршрут идти (а-ля Railscasts EP16), но не знаю, как соберите «число» из 4 отдельных текстовых полей.
Я думаю, что я должен был бы сделать что-то вроде этого:
def full_number=(phone)
self.number = area_code+"."+first_three_digits+"."+second_four_digits+"."+extension
end
Но я не уверен в том, как подойти к этому при сборке числа от формы входов. Есть предположения?
несевероамериканских пользователи не являются проблемой? – tadman
Nope ... Это регистрация событий для некоммерческой организации в Индианаполисе. Хотя есть вероятность того, что иностранный посетитель решает зарегистрироваться для бега/прогулки, это не стоит иметь дело, поскольку я сомневаюсь, что у них когда-либо был заграничный гость за одного. –