Я пытаюсь использовать сильные параметры через вызов ajax, и я получаю NoMethodError (undefined method 'permit' for ...)
с кодами ниже:
вызов ajax
onSubmit(value) {
const url = '/tweets/create';
$.ajax({
url: url,
dataType: 'text',
type: 'POST',
cache: false,
data: {
tweet: value
},
success: (data) => {
// whatever
},
error: (xhr, status, err) => {
console.error(url, status, err.toString());
},
});
}
tweets_controller.rb
def create
tweet = Tweet.new(create_params)
tweet.save
end
private
def create_params
params.require(:tweet).permit(:tweet)
end
tweet.rb
belongs_to :user
validates :tweet, { presence: true }
Однако, это работает нормально, если я не использую сильные параметры с тем же вызовом ajax, как показано ниже:
def create
tweet = Tweet.new(tweet: params[:tweet])
tweet.save
end
Как я могу сделатьэто работать с сильными параметрами?