У меня есть модель User
со строковым атрибутом name
. На моей форме, чтобы создать новый User
, это легко проверить name
атрибут:Как проверить параметры, которые не влияют на столбец db?
модели/user.rb
validates :name, presence: true, length: {maximum: 13}
users_controller.rb
private
def user_params
params.require(:user).permit(:name, :words)
end
Однако я хотите проверить параметр, который не является атрибутом или столбцом db. В моей форме у меня есть текстовое поле, которое отправляет params["words"]
в виде строки. Я знаю, что параметр отправляется, потому что я могу взаимодействовать с ним, используя binding.pry
. Но если я попытаюсь проверить его так же, как имя, ничего не произойдет. Форма отправляется с words
или без. Как я могу проверить параметр, который не является атрибутом?
моя форма:
<%= form_for @user, :url => users_path do |f| %>
<%= f.text_field :name %>
<input id="words" name="words">
<%= f.submit "Submit", class: "btn" %>
<% end %>
Привет, Джефф, я обновил свой ответ ниже, чтобы задать второй вопрос о том, как получить форму для публикации параметра, вложенного в Пользователь. Если я успешно рассмотрел все ваши вопросы, пожалуйста, отметьте правильный ответ. –