【发布时间】:2019-03-16 05:50:07
【问题描述】:
我需要将一个 ruby 代码更改为 python,我对此也很陌生。有人能告诉我有没有像 before_action 这样的功能......仅限:在 python 烧瓶中? 这是我要更改的功能:
class IftttController < ActionController::Base
before_action :return_errors_unless_valid_service_key
before_action :return_errors_unless_valid_action_fields, only: :create_new_thing
def return_errors_unless_valid_service_key
unless request.headers["HTTP_IFTTT_SERVICE_KEY"] == IFTTT_SERVICE_KEY
return render plain: { errors: [ { message: "401" } ] }.to_json, status: 401
end
end
def return_errors_unless_valid_action_fields
if params[:actionFields] && params[:actionFields][:invalid] == "true"
return render plain: { errors: [ { status: "SKIP", message: "400" } ] }.to_json, status: 400
end
end
end
正如我在互联网上看到的那样,@app.before_request 等于它,但我不知道如何将它用于特定操作(before_action :return_errors_unless_valid_action_fields,仅::create_new_thing),就像在 ruby on rails 上一样,这里是我的代码,不知道对不对:
@ifttt.before_request
def return_errors_unless_valid_action_fields():
if request.args.get("actionFields") and request.args["actionFields"]["invalid"] == True:
return render_template_string(jsonify(errors = [{status= "SKIP", message = "400"}]), 400
谁能帮帮我?非常感谢。
【问题讨论】:
-
要在此处获得问题的答案,您可能需要提供更多详细信息。也许“before_action”是我一无所知的红宝石主义,但作为一名 Python 程序员,你的问题完全没有让我继续下去。您能否提供一些代码(您尝试转换的 Ruby 代码的相关部分以及您迄今为止编写的 Python 代码?
-
我现在放了一些代码