0

web2py認証フォームを設定するためのすべての手順に従いました。web2py の使用バージョンは 2.4.7 安定版です。

(1) model/db.py に Auth を追加

from gluon.tools import *
auth = Auth(globals(),db)
auth.define_tables(username=True, signature=False)
auth.settings.registration_requires_verification = False
auth.settings.registration_requires_approval = False
auth.settings.remember_me_form = False
auth.settings.allow_basic_login = True
auth.settings.hideerror = False

(2) controller / default.py に def ユーザーを追加

def user():
    return dict(form=auth())

(3) 最後に、 @auth.requires_login() で関数をテストしています

adminapp からユーザーを db.auth_user に挿入しました

ログインフォームが表示されるのですが、ログインも新規ユーザー登録もできません。エラーはありません。テキスト フィールドがクリアされただけで、それ以上何も起こりませんでした。

login_next には「#」が追加されます

_next=/init/service/index%3Fservice_code%3Dsfvod#

どんな種類のエラーや警告もキャッチできません。誰かがこれを解決する方法を知っていて、考えているなら助けてください。

これは、ユーザー ログイン フォーム /views/default/user.html の簡単なビューです。forms.errors を調べてみましたが、空です。

{{extend 'login.html'}}
<h2>{{=T( request.args(0).replace('_',' ').capitalize() )}}</h2>
<div id="web2py_user_form">
  {{=form}}
  {{print form.errors}}
</div>

生成された Post Request Body Content-Type: multipart/form-data; を調べました。境界 = ---------------------------188042046317656 コンテンツの長さ: 637 --------------- --------------188042046317656 Content-Disposition: フォームデータ。name="username" trexxx -----------------------------------188042046317656 Content-Disposition: フォームデータ。name="password" greff177 -----------------------------188042046317656 Content-Disposition: フォームデータ。name="_next" /init/default/change_language?language=BG -----------------------------188042046317656 Content-Disposition: フォーム-データ; name="_formkey" ad38565c-d30a-4f2a-be74-4492e9c19f57 ------------------------------188042046317656 Content-Disposition: form-データ; name="_formname" ログイン ------------------------------188042046317656--

認証フォームを使用したすべての試行について - 認証されません。

また、作成したユーザー/パスを auth.login_bare(user_name,user_pass) で確認します。結果はここで問題ありません。ユーザーが存在し、テーブル db.auth_user で正しいです

4

0 に答える 0