私は Web2py を初めて使用し、チケットがスローしているエラーを理解できません。誰かがエラーとその理由を説明できますか?
これがチケットです:
チケットID
127.0.0.1.2012-08-29.01-43-16.edfb1953-fd71-4aa6-a768-815fe46fe273「式」オブジェクトには属性「ストリップ」がありません
トレースバック
トレースバック (最新の呼び出しが最後):
ファイル「/home/user/Web2py/web2py/gluon/restricted.py」、205行目、環境内の制限されたexec ccode
ファイル "/home/user/Web2py/web2py/applications/SocialImage/models/db.py"、12 行目、フォーマット = '%(title)s')
ファイル "/home/user/Web2py/web2py/gluon/dal.py"、6320 行目、define_table 内
ポリモデル=ポリモデル)
ファイル "/home/user/Web2py/web2py/gluon/dal.py"、598 行目、create_table 参照 = field.type[10:].strip()
AttributeError: 'Expression' オブジェクトに属性 'strip' がありません
エラーのスナップショット (「式」オブジェクトには属性「ストリップ」がありません)
関数の引数リスト
(self=, table=, 'id': }>, migrate=True, fake_migrate=False, polymodel=None)
コード一覧
ソート可能 += 1
k = フィールド名
インスタンスの場合 (field.type,SQLCustomType):
ftype = field.type.native または field.type.type
elif field.type.startswith('参照'):
参照 = フィールド.タイプ[10:].ストリップ()
constraint_name = self.constraint_name(テーブル名、フィールド名)
hasattr (テーブル、'_primarykey') の場合:
rtablename,rfieldname = referenced.split('.')
rtable = table._db[rtablename]
コード:
デシベル = DAL("sqlite://storage.sqlite")
db.define_table('ユーザー',
Field('uname',unique=True),
フィールド名')、
フィールド('メール'))
db.define_table('画像',
Field('タイトル', unique=True),
Field('ファイル', 'アップロード'),
Field('uploader_name', db.user.uname),
format = '%(タイトル)s')
db.define_table('コメント',
Field('image_id', db.image),
Field('authors', db.user.uname),
Field('本文', 'テキスト'))
デシベル.user.email.requires=IS_EMAIL()
db.user.uname.requires=IS_NOT_IN_DB(db,db.uname)
デシベル.ユーザー名=IS_NOT_EMPTY()
db.image.uploader.requires=IS_IN_DB(db,db.user.uname)
db.comment.image_id.requires=IS_IN_DB(db,db.image.id,'%(タイトル)s')
デシベル.comment.image_id.writable=デシベル.comment.image_id.readable=False