所以我已经将GMail API与我的Django项目联系起来了。当我在PyCharm中单独运行quickstart.py时,它运行并且工作正常(这是用GMail登录打开新选项卡的脚本)。
很好但是现在我必须给用户一个机会来做同样的事情。所以我决定创建一个按钮,按下该按钮,quickstart.py将运行,用户将登录。 I tried that by creating an action. Then I tried a usual 'a' tag. And in both cases was error "Not found". 此外,我甚至尝试运行一个php,我执行.py script.Sounds crazy。
<?php
echo exec('/quickstart.py');
?>
但错误是一样的。我也尝试过使用url.py和写路径。我想我不明白。请解释一下。
所以又一次又一次:按下按钮 - &gt;运行quickstart.py
答案 0 :(得分:0)
好像你没有运行 quickstart.py ,但在那里创建了一些function
,将from quickstart import your_function
导入views.py
并调用your_function
1}}来自your_custom_view
。
像这样的简化逻辑:
from quickstart import your_function
def your_custom_view(request):
button_was_pressed = request.GET.get("button")
if button_was_pressed:
your_function()
return HttpResponse("Button pressed")
else:
return HttpResponse("No button pressed")
让您的Button
像链接一样工作(如果您不需要POST
请求),请像:
<a href="{% url "your_custom_view_url" %}?button=True">Button</a>
注意:这不是正常工作的代码,而是简化的逻辑,您提供的信息很短。
更新1 :
settings.py
:
BASE_DIR = os.path.dirname(os.path.abspath(__file__))
views.py
:
from your_project.settings import BASE_DIR
path_to_json = os.path.join(BASE_DIR, r'client_secret.json')
flow = client.flow_from_clientsecrets(path_to_json, SCOPES)