Я сторонник + PHP dev, пытаясь исправить [] в проекте, построенном в Rails.Как извлечь информацию из поля ввода в ruby
[] = Извлечь цвет, показать немного более темный цвет.
Эта строка:
<%= f.text_field attribute %>
создает поле ввода со значением, которое может быть переведено в цвет. Я теряю информацию о том, где искать, как она добавляет эту ценность. Я пытаюсь использовать значение, которое генерирует это поле ввода.
это код из файла select_a_color_input.html.erb в папке приложения/представления/общего доступа. Любые идеи о том, где продолжить мою охоту за сокровищами? :)
обновление: я нашел это!
def app_text_field(attribute, args = {})
render_field 'text_field', field_locals(attribute, args)
end
Помогло ли это?^__^
обновление: Форма строитель
class AppFormBuilder < ActionView::Helpers::FormBuilder
def form_fields(partial = nil , options = {})
partial ||= 'form'
fields = ''
unless options.delete(:without_error_messages)
fields << @template.render('shared/error_messages', :target => Array(@object).last)
end
fields << @template.render(partial, options.merge(:f => self))
end
def app_text_field(attribute, args = {})
render_field 'text_field', field_locals(attribute, args)
end
def app_file_field(attribute, args = {})
render_field 'file_field', field_locals(attribute, args)
end
private
def render_field(name, locals)
@template.render field_path(name), locals
end
def field_locals(attribute, args = {})
help_options = args[:help_options] || {}
field_options = args[:field_options] || {}
html_options = args[:html_options] || {}
{ :f => self, :attribute => attribute, :help_options => help_options, :field_options => field_options, :html_options => html_options, :object => object }
end
def field_path(value)
"shared/app_form/#{value}"
end
end
обновление: Когда я попытался добавить
<%= content_tag(:p, attribute) %>
Это не дает мне значения, но вместо этого идентификатор/наименование элемент, а не цвет.
Вы хотите использовать значение на стороне клиента (например, JavaScript) или на стороне сервера? – zeantsoi
Мой план состоит в том, чтобы добавить div перед этим полем ввода с выделенным цветом в качестве фонового значения, а затем преобразованное только слегка более темное значение в качестве границы при создании страницы. Существует много разных цветовых вводов, поэтому я хотел бы создать предварительный просмотр цвета при загрузке страницы. – Alisso
Если пользователь меняет цвет, он обновит предварительный просмотр с помощью js. – Alisso