Новый программатор ROR здесь. Я пытаюсь создать веб-приложение, которое позволяет пользователю заполнять форму, в которой он вводит информацию о компании, и, нажимая кнопку «Отправить», добавляет ввод в базу данных.
На данный момент, если пользователь должен создать новую запись, он увидит несколько полей, например, «Название компании». Для них есть пустое поле для ввода новой компании, а рядом с ним есть раскрывающееся меню, которое пользователь может использовать для просмотра существующих компаний в базе данных.
<div class="field">
<%= f.label :company_name %><br />
<%= f.text_field :company_name %>
<%= f.label :company_name %><br />
<%= f.select( :company_name, Company.all.map {|p| [p.company_name]}.uniq!, :prompt => "Select a Company") %>
Я ищу способ разрешить пользователю вводить новую компанию ИЛИ щелкнуть раскрывающееся меню и выбрать существующую компанию.
На данный момент :Если в текстовое поле ничего не введено и ни один параметр из раскрывающегося списка не выбран, оно сохраняется как пустое. Если что-то введено и ни один параметр не выбран, он сохраняется как пустой. Однако, если что-то введено и что-то выбрано из раскрывающегося списка, параметр раскрывающегося списка сохраняется.
Надеюсь, я не сделал это слишком запутанным. Любая помощь вообще будет оценена.
Заранее спасибо.
РЕДАКТИРОВАТЬ:
Мое действие создания теперь выглядит так
def create
@company = Company.new(params[:company])
@company.company_name = params[:new_company_name] unless params[:new_company_name].empty?
respond_to do |format|
if @company.save
format.html { redirect_to @company, notice: 'Company was successfully created.' }
format.json { render json: @company, status: :created, location: @company }
else
format.html { render action: "new" }
format.json { render json: @company.errors, status: :unprocessable_entity }
end
end
конец
и вид формы:
<%= label :company_name %><br />
<%= text_field :new_company_name %>
<%= f.label :company_name %><br />
<%= f.select( :company_name, Company.all.map {|p| [p.company_name]}.uniq!, :prompt => "Select a Company") %>
Новая ошибка теперь:
неправильное количество аргументов (1 вместо 2)
Извлеченный источник :<%= метка :компания _название %>
Спасибо за вашу помощь!