Python瓶的形状是405

2024-04-19 17:54:30 发布

您现在位置:Python中文网/ 问答频道 /正文

我有这张表格,每次我试着把它贴到问题底部的方法上。应用程序直接给我一个405错误。我在控制台中使用相同的方法检查了我的数据库是否正常工作。在

(我删除了很多html,因为它只是样式之类的东西)

<form action="/register" method="post" class="grid">

                                    <div class="cell colspan3" style="margin-left:2%;">
                                        <div class="input-control modern text">
                                            <input type="email" name="email" id="email">
                                            <span class="label">Email</span>
                                            <span class="informer">Skriv din email</span>
                                            <span class="placeholder">Email</span>
                                        </div>
                                    </div>
                                    <div class="cell colspan3">
                                        <div class="input-control modern text cell">
                                            <input type="text" name="username" id="username" >
                                            <span class="label">Brugernavn</span>
                                            <span class="informer">Skriv dit brugernavn</span>
                                            <span class="placeholder">Brugernavn</span>
                                        </div>
                                    </div>
                                    <div class="cell colspan3">
                                        <div class="input-control modern text cell">
                                            <input type="password" name="password" id="password">
                                            <span class="label">Password</span>
                                            <span class="informer">Skriv dit password</span>
                                            <span class="placeholder">Password</span>
                                        </div>
                                    </div>
                                    <div class="cell colspan3">
                                        <div class="input-control modern text cell">
                                            <input type="password" name="passwordconfirm" id="passwordconfirm">
                                            <span class="label">Gentag password</span>
                                            <span class="informer">Skriv dit password igen.</span>
                                            <span class="placeholder">Gentag password</span>
                                        </div>
                                    </div>

                                    <div class="cell colspan3">
                                        <label class="input-control checkbox ">
                                            <input type="checkbox" name="accept_tos" id="accept_tos">
                                            <span class="check"></span>
                                            <span class="caption">Jeg accepterer hjemmesidens regler</span>
                                        </label>
                                    </div>
                                    <div class="cell colspan3">
                                        <div class="input-control cell">
                                            <button class="button success" type="submit">Registrer</button>
                                        </div>
                                    </div>
                                </div>
                            </div>

            </form>

我用python表单调用我的html方法:

^{pr2}$

RegistrationForm方法如下所示:

^{3}$

Tags: 方法textnamedividinputtypecell
3条回答

如果这确实是您正在使用的代码,我不明白为什么您得到的是405 Unsupported Method而不是验证错误。你需要在CSRF表单中隐藏字段。在

<form ...>
    {{ form.hidden_tag() }}

这个代码还有其他问题。重定向到login,不要从register视图呈现模板。使用form.validate_on_submit()。不要将request.form传递给窗体。让表单呈现输入,不要自己编写html。在

显然,你的应用程序中没有任何类似的url代码问题:

app = Blueprint('user', __name__, url_prefix='/user/')

你还有另一个带有url_前缀的蓝图,比如:

^{pr2}$

还有一个功能,比如:

^{3}$

在蓝图中。。。在

您的表单正在将数据过帐到'/register'而不是'/user/register'

试着换衣服

if request.method == 'POST' and form.validate():

^{pr2}$

相关问题 更多 >