Jerome
Jerome

Reputation: 6217

Reails remote form format exists but not recognized

The following form intends to generate an XHR response

<% articlediscounts_for_article = @articlediscounts.where(article_id: article.id).first %>
<%= form_with(scope: articlediscounts_for_article, url: user_discount_users_path, local: false, method: :post) do |form| %>

the action processes

Processing by UsersController#user_discount as JS

and generates expected results, but fails in the rendering process, complaining about (with initial stack)

ActionController::UnknownFormat (UsersController#user_discount is missing a template for this request format and variant. 

request.formats: ["text/javascript", "*/*"]
request.variant: []):
actionpack (6.1.3.2) lib/action_controller/metal/implicit_render.rb:42:in `default_render'
actionpack (6.1.3.2) lib/action_controller/metal/basic_implicit_render.rb:6:in `block in send_action'
actionpack (6.1.3.2) lib/action_controller/metal/basic_implicit_render.rb:6:in `tap'
actionpack (6.1.3.2) lib/action_controller/metal/basic_implicit_render.rb:6:in `send_action'

Yet that template clearly exists in the proper path (its corresponding partial is also present in the directory) as shown here:

template in directory

This is perplexing as the warning message is contrary to the reality. The only assumptions that come to mind are that of some handling of form_with cmobined with the scope or the question of variant

What is mistaken here?

Upvotes: 0

Views: 55

Answers (0)

Related Questions