This is help, thank you.

On Tuesday, December 23, 2014 at 4:33:54 PM UTC+8, William Chen wrote:
>
> Hi Chris, I had the same problem and found this thread when I was 
> searching for a solution.
>
> The solution is to manually create 2 or 3 comments using appadmin. 
>
> If table B references table A, you need to populate table A before you 
> populate table B, or else there will be an error. In our case, the table 
> comm references to itself in this line:
> Field('parent_comm', 'reference comm')
>
> So we need to manually add a couple of new comments using appadmin, before 
> we populate the table comm. 
>
> Hope this helps.
>
>
> On Wednesday, 28 May 2014 23:05:06 UTC+8, Chris Simpson wrote:
>>
>>
>> Hi Uri,
>>
>> Did you ever find a solution to this?
>> On Wednesday, May 14, 2014 12:01:29 PM UTC+2, Uri Tamir wrote:
>>>
>>> Hi all,
>>> I've been following Massimo's video tutorials 
>>> <http://vimeo.com/76047107> (which are *great!* thanks Massimo)
>>>
>>> when trying to build the reddit clone and populate it i get a ticket 
>>> - <class 'sqlite3.IntegrityError'> foreign key constraint failed
>>>
>>> the database was populated with users and posts but not with comments. I 
>>> tried to make sure my code is exactly as the code Massimo showed but /w no 
>>> success.
>>>
>>> any suggestions?
>>>
>>> db.define_table('category',
>>>                 Field('name', requires = (IS_SLUG(), IS_LOWER(), 
>>> IS_NOT_IN_DB(db, 'category.name'))))
>>>
>>> db.define_table('post',
>>>                 Field('category', 'reference category', readable=False, 
>>> writable=False),
>>>                 Field('title', 'string', requires=IS_NOT_EMPTY()),
>>>                 Field('url', requires=IS_EMPTY_OR(IS_URL())),
>>>                 Field('body', 'text', requires=IS_NOT_EMPTY()),
>>>                 Field('votes', 'integer', default=0, readable=False, 
>>> writable=False),
>>>                 auth.signature) # created_on, created_by, modified_on, 
>>> modified_by, is_active
>>>
>>> db.define_table('post_vote',
>>>                 Field('post', 'reference post'),
>>>                 Field('score', 'integer', default=+1), # numerical 
>>> representation of votes
>>>                 auth.signature)
>>>
>>> db.define_table('comm',
>>>                 Field('post', 'reference post'),
>>>                 Field('parent_comm', 'reference comm'),
>>>                 Field('votes', 'integer'),
>>>                 Field('body', 'text'),
>>>                 auth.signature)
>>>
>>> db.define_table('comm_vote',
>>>                 Field('comm', 'reference comm'),
>>>                 Field('score', 'integer', default=+1), # numerical 
>>> representation of votes
>>>                 auth.signature)
>>>
>>> from gluon.contrib.populate import populate
>>> if db(db.auth_user).count()<2:
>>>     populate(db.auth_user, 100)
>>>     db.commit()
>>> if db(db.post).count()<2:
>>>     populate(db.post, 500)
>>>     db.commit()
>>> if db(db.comm).count()<2:
>>>     populate(db.comm, 1000)
>>>     db.commit()
>>>
>>>
>>>

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to