我想向 API 发送 POST 请求。这是我的代码:
conn = Faraday.new(url: BASE) do |faraday|
faraday.response :logger
faraday.request :url_encoded
faraday.headers['Content-Type'] = 'application/json'
faraday.headers["Authorization"] = "bearer #{AppConfig.instance.access_token}"
faraday.adapter Faraday.default_adapter
end
form_data = {a: 1, b: 2}
conn.post("/api/test", form_data)
Run Code Online (Sandbox Code Playgroud)
但我收到这个错误:
conn = Faraday.new(url: BASE) do |faraday|
faraday.response :logger
faraday.request :url_encoded
faraday.headers['Content-Type'] = 'application/json'
faraday.headers["Authorization"] = "bearer #{AppConfig.instance.access_token}"
faraday.adapter Faraday.default_adapter
end
form_data = {a: 1, b: 2}
conn.post("/api/test", form_data)
Run Code Online (Sandbox Code Playgroud)
我也尝试过:
conn.post("/api/test", form_data.to_json)
Run Code Online (Sandbox Code Playgroud)
但它也不起作用。
我有2个控制器,1个用户,1个用于管理员.
控制器/ articles_controller.rb
class ArticlesController < ActionController::Base
...
def show
@article = Article.find(parmas[:id])
authorize @article
end
...
end
Run Code Online (Sandbox Code Playgroud)
控制器/管理/ articles_controller.rb
class Admin::ArticlesController < AdminController
...
def show
@article = Article.find(parmas[:id])
authorize @article
end
...
end
Run Code Online (Sandbox Code Playgroud)
我有2个文件策略策略/ article_policy.rb
class ArticlePolicy
extend ActiveSupport::Autoload
autoload :Admin
attr_reader :user, :record
def initialize(user, record)
@user = user
@record = record
end
def show?
# allow show for every user.
true
end
end
Run Code Online (Sandbox Code Playgroud)
和一个文件policy/admin/article_policy.rb
class Admin::ArticlePolicy
attr_reader :user, :record
def initialize(user, record)
@user = user
@record …
Run Code Online (Sandbox Code Playgroud) 我有一个下载文件 csv 的操作,但是当点击错误时 missing template
在我的行动中编码
def export
respond_to do |format|
format.html
format.csv { send_data UserDetail.order('id desc').first(20).to_csv }
end
end
Run Code Online (Sandbox Code Playgroud)
在我看来:
= link_to "Export CSV", export_call_center_user_details_path(format: "csv"), :class => "btn btn-default"
Run Code Online (Sandbox Code Playgroud)
错误:
由 CallCenter::UserDetailsController#export as CSV 处理在 5 毫秒内完成 500 内部服务器错误
在 user_details#export 中出现 ActionView::MissingTemplate:
缺少模板 call_center/user_details/export, application/export with {:locale=>[:en], :formats=>[:html], :handlers=>[:erb, :builder, :coffee, :haml]}。
当我尝试删除行时format.html
出现错误:
在 4ms 内完成 406 Not Acceptable (ActiveRecord: 0.3ms)
如何修复上面的错误?
错误:
开始 GET "/call_center/user_details/export.csv" for 127.0.0.1 at 2016-06-20 16:10:32 +0700 Processing by …