在Rails 5 API中渲染视图

swe*_*lly 10 ruby ruby-on-rails ruby-on-rails-5

我使用Rails 5生成了一个仅限API的rails应用程序rails new <application-name> --api.我已经决定要包含一个用于测试某些内容的视图,并且在加载视图时遇到问题.

我创建了一个带有一些文本的users/index.html.erb文件,我的控制器现在很简单,def index; end但是当我点击/ users URL时没有出现任何内容.我也尝试# config.api_only = true在config/application.rb中注释掉,但这并没有影响任何东西.有关如何进行的任何建议?

小智 21

您不需要config.api_only = true为此目的取消注释,只需继承您的控制器ActionController::Base,或者在您的控制器中执行ApplicationController(默认为公共轨道生成).

码:

  1. 仅适用于此控制器 YourController < ActionController::Base
  2. 适用于所有应用 ApplicationController < ActionController::Base

  • 如果 html 端点曾经使用过会话或 cookie(例如,像设计一样),那么从 API 应用程序渲染 html 视图时会出现其他问题,因为这些都是仅通过 API 轨道去除的。 (2认同)