第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

嘗試運(yùn)行 Flask 應(yīng)用程序時(shí)出現(xiàn)錯(cuò)誤“函數(shù)”對(duì)象沒有屬性“as_view”

嘗試運(yùn)行 Flask 應(yīng)用程序時(shí)出現(xiàn)錯(cuò)誤“函數(shù)”對(duì)象沒有屬性“as_view”

www說 2023-03-16 15:49:28
一年多以后,我開始編寫 Flask 應(yīng)用程序,我想我忘記了什么。下面的代碼會(huì)導(dǎo)致錯(cuò)誤:from flask import Flaskfrom flask import jsonifyfrom flask_restplus import Resource, Apifrom home_iot.config import readerfrom download_audio.ydla import downloadapp = Flask(__name__)_api = Api(app, catch_all_404s=True, version=0.1,          title="REST HTTP API's Gateway",          descrition="REST API gateway")api_ns = _api.namespace("iot", description="API.")@api_ns.route("/tcpserver", methods=["GET"])def advertise_tcpserver():    ip = reader.get_server_ip()    return jsonify({"tcpserver": ip})if __name__ == "__main__":    app.run(host='127.0.0.1')錯(cuò)誤是:$ python 應(yīng)用程序.pyTraceback (most recent call last):  File "app.py", line 29, in <module>    @api_ns.route("/tcpserver", methods=["GET"])  File "/Users/ciasto/pyenvs/flaskrestplusiot/lib/python2.7/site-packages/flask_restplus/namespace.py", line 98, in wrapper    self.add_resource(cls, *urls, **kwargs)  File "/Users/ciasto/pyenvs/flaskrestplusiot/lib/python2.7/site-packages/flask_restplus/namespace.py", line 87, in add_resource    api.register_resource(self, resource, *ns_urls, **kwargs)  File "/Users/ciasto/pyenvs/flaskrestplusiot/lib/python2.7/site-packages/flask_restplus/api.py", line 264, in register_resource    self._register_view(self.app, resource, namespace, *urls, **kwargs)  File "/Users/ciasto/pyenvs/flaskrestplusiot/lib/python2.7/site-packages/flask_restplus/api.py", line 287, in _register_view    resource_func = self.output(resource.as_view(endpoint, self, *resource_class_args,AttributeError: 'function' object has no attribute 'as_view'
查看完整描述

2 回答

?
一只萌萌小番薯

TA貢獻(xiàn)1795條經(jīng)驗(yàn) 獲得超7個(gè)贊

希望這可以幫助那些有同樣錯(cuò)誤但沒有找到解決方案的人

要完成@v25給出的答案,您必須通過從 flask_restplus 中的 Ressource 類繼承來(lái)為您的命名空間提供資源。

以下示例對(duì)我有用

環(huán)境:

  • Ubuntu 18.04

  • 蟒蛇 3.7.1

蟒蛇要求:

  • 燒瓶==1.1.2

  • flask-restplus==0.13.0

  • 工具==0.16.1

源代碼:iot.py

from flask_restplus import Namespace,Resource


api_ns = Namespace("iot", description="API.")


@api_ns.route("/tcpserver")

class AdvertiseTcpserver(Resource):

    def get(self):

        #TODO return the correct ip value

        return {"tcpserver": "ip"}

app.py


from .iot import api_ns

from flask import Flask

from flask_restplus import Api


app = Flask(__name__)


_api = Api(app, catch_all_404s=True, version=0.1,

      title="REST HTTP API's Gateway",

      descrition="REST API gateway")


_api.add_namespace(api_ns, path='/some/prefix')


app.run()

測(cè)試命令:


#!/bin/sh

wget localhost:5000/some/prefix/tcpserver

如果這有幫助,請(qǐng)告訴我。


查看完整回答
反對(duì) 回復(fù) 2023-03-16
?
達(dá)令說

TA貢獻(xiàn)1821條經(jīng)驗(yàn) 獲得超6個(gè)贊

不要認(rèn)為這是用flask_restplus. 查看縮放文檔


您可能正在尋找類似的東西:


iot.py


from flask_restplus import Namespace


api_ns = Namespace("iot", description="API.")


@api_ns.route("/tcpserver", methods=["GET"])

def advertise_tcpserver():

    ip = reader.get_server_ip()

    return jsonify({"tcpserver": ip})

然后在你的主app.py中:


# other imports 


from .iot import api_ns


app = Flask(__name__)


_api = Api(app, catch_all_404s=True, version=0.1,

          title="REST HTTP API's Gateway",

          descrition="REST API gateway")


_api.add_namespace(api_ns, path='/some/prefix')

此外,您似乎正在使用已停產(chǎn)的 Python 2.7。我建議使用虛擬環(huán)境或 docker 升級(jí)到最新版本,以免弄亂系統(tǒng)的 python。


查看完整回答
反對(duì) 回復(fù) 2023-03-16
  • 2 回答
  • 0 關(guān)注
  • 162 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)