Hi Mr.Freeze, It said KeyError: 'poll',
Error traceback Traceback (most recent call last): File "/Users/zheli/Development/workspace/zenmezheng/web2py/gluon/ restricted.py", line 178, in restricted exec ccode in environment File "/Users/zheli/Development/workspace/zenmezheng/web2py/ applications/init/models/db.py", line 85, in <module> IS_NOT_IN_DB(db(db.poll.author == user_id), 'poll.question')], File "/Users/zheli/Development/workspace/zenmezheng/web2py/gluon/ sql.py", line 1329, in __getattr__ return dict.__getitem__(self,key) KeyError: 'poll' also in db.py I assigned user_id as auth.user.id: if auth.is_logged_in(): user_id = auth.user.id else: user_id = None Thanks Zhe On Jul 17, 9:03 pm, "mr.freeze" <nat...@freezable.com> wrote: > What does the error say? > > On Jul 17, 1:47 pm, Zhe Li <linuxcity...@gmail.com> wrote: > > > > > Hello everyone, > > > I was trying to do a validation in db.py like: > > > db.define_table('poll', > > SQLField('question', 'text', requires=[IS_NOT_EMPTY(), > > IS_NOT_IN_DB(db(db.poll.author == user_id), 'poll.question', > > error_message = 'Question already existed!')], length=120) > > SQLField('author', db.auth_user, default=user_id, readable=False, > > writable=False)) > > > but instead of checking if the same guy has post the same question, it > > gives me an error. Is there anything wrong with my code? Many thanks!! > > > Cheers, > > Zhe