首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >缺少请求格式的模板: text/html

缺少请求格式的模板: text/html
EN

Stack Overflow用户
提问于 2019-08-20 08:43:49
回答 1查看 12.1K关注 0票数 5

我有术语和短语模型,我正在添加嵌套资源。我想获得Phraes_term的术语Id来创建一个数据对 例子:术语1和短语2。但是当您按下show.html.erb词条中的新按钮时,就会出现错误。

代码语言:javascript
复制
-->error :PhrasesTermsController#new is missing a template for request formats: text/html

form.html.erb -(phrases_term).

代码语言:javascript
复制
<%= form_with(model: phrases_term, local: true) do |form| %>
  <% if pharases_term.errors.any? %>
    <div id="error_explanation">
      <h2><%= pluralize(pharases_term.errors.count, "error") %> prohibited this phrase from being saved:</h2>

      <ul>
      <% pharases_term.errors.full_messages.each do |message| %>
        <li><%= message %></li>
      <% end %>
      </ul>
    </div>
  <% end %>

  <div class="field">
    <%= form.label :ID %>
    <%= form.number_field_tag :ID %>
  </div>

  <div class="actions">
    <%= form.submit %>
  </div>
<% end %>

(phrases_term) -new.html.erb

代码语言:javascript
复制
<%= render 'form', phrases_term: @phrases_term %>

Phrases_terms_controller.rb

代码语言:javascript
复制
class PhrasesTermsController < ApplicationController
  before_action :authenticate_user!
  before_action :set_term

  def new
    @phrases_term = PhrasesTerm.new
  end

  def create
    @phrases_term = @term.phrases_term
    @phrases_term.user = current_user
    @phrases_term.save
    redirect_back(fallback_location: root_path)
  end
  
  private
  
  def phrases_term_params
    params.require(:phrases_term).permit(:term_id)
  end

  def set_term
    @term = Term.find(params[:term_id])
  end
end

routes.rb

代码语言:javascript
复制
resources :terms do
    resources :phrases_terms, only: [:create, :destroy, :new]
  end

(术语) Show.html.erb

代码语言:javascript
复制
<td><%= link_to 'New', new_term_phrases_term_path(@term) %></td>
代码语言:javascript
复制
(phrases_term).

_form.html.ebr
<%= form_with(model: phrases_term, local: true) do |form| %>
  <% if pharases_term.errors.any? %>
    <div id="error_explanation">
      <h2><%= pluralize(pharases_term.errors.count, "error") %> prohibited this phrase from being saved:</h2>

      <ul>
      <% pharases_term.errors.full_messages.each do |message| %>
        <li><%= message %></li>
      <% end %>
      </ul>
    </div>
  <% end %>

  <div class="field">
    <%= form.label :ID %>
    <%= form.number_field_tag :ID %>
  </div>

  <div class="actions">
    <%= form.submit %>
  </div>
<% end %>
代码语言:javascript
复制
(phrases_term)
 new.html.erb
<%= render 'form', phrases_term: @phrases_term %>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-08-20 08:47:11

这意味着您没有应用程序/视图/短语_/new.html.erb文件。我不确定您是否将文件命名为“phrases_term”或“词组_terms”。

在正确的目录中创建一个,填充它,它将加载。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57569825

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档