[英]Calling Functions in Flask
提前道歉,因為這可能是在這里找到的最基本的問題,但我是最環保的新手,無法理解如何在 flask 中調用 function,所以當我登陸 ZE659032A8D2D8B6AD 時它會運行。
我的目的是嘗試讓 python 腳本在從 WebCore 向 URL 發出 GET 請求時運行(對於那些不知道這是一個允許您為 SmartThings 編寫智能家居功能的程序的人)或當我只是登陸時在 URL。 然后,我將把它連接到一個虛擬開關,該開關將啟動控制貓喂食器中電機的代碼,這樣我就可以遠程/通過語音喂養我的貓。
所有非常無聊的東西,但試圖在這里學習一些基礎知識,有人可以幫忙嗎?
就目前而言,我有兩個文件,都位於名為“CatFeeder”的根目錄中
喂食器.py
from flask import Flask
from feed import start
app = Flask(__name__)
@app.route('/')
def feed()
return feed.start
if __name__ == '__main__':
app.run(host='0.0.0.0', port='5000', debug=True)
飼料.py
import time
import RPi.GPIO as GPIO
def start():
# Next we setup the pins for use!
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
Motor1Forward = 17
Motor1Backwards = 18
GPIO.setup(Motor1Forward,GPIO.OUT)
GPIO.setup(Motor1Backwards,GPIO.OUT)
print('Feeding Lola')
# Makes the motor spin forward for x seconds
# James Well Beloved - 11 seconds = 28g food (RDA Portion = 52g/4kg cat or 61g/5kg cat)
# XXXX - X seconds - Xg food
GPIO.output(Motor1Forward, True)
GPIO.output(Motor1Backwards, False)
time.sleep(11)
print('Lola Fed!')
GPIO.output(Motor1Forward, False)
GPIO.output(Motor1Backwards, False)
GPIO.cleanup()
quit()
當我設置export FLASK_APP=catfeeder.py
然后flask run
服務運行但當我登陸頁面時沒有任何反應。 我認為我稱呼事物的方式有問題。
我想如果我只是將 feed.py 中的代碼集成到 catfeeder.py 中,那將是最簡單的,但我不確定它的語法是什么,而且對於 go 來說,這感覺像是一種混亂的方式。
提前致謝!
您已經導入了 function 但實際上並沒有調用它,因為您錯過了添加括號()
,嘗試return start()
如果您打算返回 function object 並且不調用 function,則應通過鍵入return start
將其返回
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.