2015-11-10 109 views
1

我使用python瓶做一個小網站,這裏是目錄結構 enter image description here的Html找不到燒瓶網址

這裏是run.py文件

from app import app 
app.run 

這裏是在__init__file應用

from flask import Flask, render_template, json, request 
from flask.ext.sqlalchemy import SQLAlchemy 


app = Flask(__name__) 
app.config.from_object('config') 


@app.route('/') 
def index(): 
    return render_template('home.html') 
    # return "hello" 


@app.route('/signin', methods=['GET', 'POST']) 
def signin():  
    return 'ok' 

這裏是home.html的文件

<input type="text" id="name" placeholder="Username"> 
<input type="text" id="password" class="inbox" placeholder="password">  
<div style="text-align:center"> 
     <input type="button" id="btn_up_submit" class="btn btn-primary" value="sign up" onclick="upSubmit()"> 
     <input type="button" id="btn_up_cancel" class="btn btn-success" value="cancel" onclick="upCancel()"> 
</div> 


<script> 
function upSubmit() { 
    var name = $("#name").val(); 
    var password = $("#password").val(); 

    mydata = { 
     'name':name, 
     'password':password 
    }; 
    $.getJSON('/signin') 

} 
<script> 

我運行後,它可以顯示home.html,但是當我點擊提交按鈕後,瀏覽器告訴我「找不到http://127.0.0.1:8000/signin」。請幫助我,如何設置網址?我想從html發送參數到.py文件,我該怎麼做。非常感謝。

+0

我可以建議看看 - http://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-i-hello-world – LearningSlowly

+0

@學習很慢,非常感謝,我剛剛開始學習python,我會讀它。 – thiiiiiking

+0

不用擔心。如果你仔細閱讀整個教程,你會得到一個關於如何使用燒瓶的精彩解釋。您的問題應該由第三個教程解決;) – LearningSlowly

回答

1

LearningSlowly的評論值得研究。米格爾Gringberg寫了一個非常好的瓶的教程,使用Python 2.7完美的作品: http://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-i-hello-world

我會建議您嘗試與較小的步驟不同的步驟。看起來問題在於你的JavaScript實現。如果你是捲髮使用:

curl 127.0.0.1:5000/signin

你應該有「OK」退回給您。

如果你想從.html文件將數據發送到您的views.py,我特別期待在米格爾的教程的web表單部分:http://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-iii-web-forms

它會幫助你創建一個表格發送變量到.html,並將表單字段發佈回您的views.py。

0

我可以看到你的代碼有很多問題。

  • 我不確定燒瓶服務器如何在沒有您撥打app.run()的情況下運行。
  • 默認燒瓶服務器運行在端口5000,而不是8000.
  • 目前還不清楚是否包含jquery。如果沒有,$和隨後的jQuery的功能將無法正常工作
  • 功能upSubmit()一旦你解決這些基本問題的聲明

之前使用,它工作正常。檢查屏幕截圖here

+0

感謝您的重播。當我問這個問題時,我有我的項目目錄結構的屏幕截圖。 Run.py在圖片的最後一行。我犯了一個錯誤,應該是5000而不是8000.但是當我在瀏覽器上運行它時,我輸入了5000。 – thiiiiiking

+0

我在我的html中包含了jquery,只是沒有寫在我的問題上。我在輸入標籤的後面添加了up()。謝謝 – thiiiiiking

+0

我的意思是,在你的跑步中。py文件,你不調用函數app.run()[注意圓括號]。問題現在解決了嗎? – Sidmeister