this is the code for adding an image to a blog :  when i use it it
gets all the images to all the blogs
...........................................................
db.py:


import datetime
now=datetime.datetime.today()
db.define_table('blogposts',
               SQLField('title', length=64),
               SQLField('author', default=session.username),
               SQLField('datetime', 'datetime',default=now),
               SQLField('post', 'text'),
               SQLField('numcomments', 'integer',default=0))
db.blogposts.title.requires = [IS_NOT_EMPTY(),
IS_NOT_IN_DB(db,db.blogposts.title)]
db.blogposts.author.requires = IS_NOT_EMPTY()
db.blogposts.post.requires = IS_NOT_EMPTY()

db.define_table('image',Field('blog_id',db.blogposts),Field('title'),Field( 
'discription','text'),Field('image','upload'))
db.image.title.requires = IS_NOT_IN_DB(db, db.image.title)
db.image.blog_id.requires = IS_IN_DB(db, db.blogposts.id, '%
(title)s')

.........................................................................
controler:

blogposts = db().select(db.blogposts.ALL,
orderby=~db.blogposts.datetime)
    blogposts_numcomments = db().select(db.blogposts.ALL,
orderby=~db.blogposts.numcomments|~db.blogposts.datetime)
    commentsnposts = db(db.blogcomments.blogpost_id ==
db.blogposts.id)
    comments = commentsnposts.select(db.blogcomments.author,
db.blogcomments.blogpost_id, db.blogposts.title,
orderby=~db.blogcomments.datetime)
    images=db(db.image.blog_id==db.blogposts.id).select(db.image.ALL)
youtube=db(db.youtube.blog_id==db.blogposts.id).select(db.youtube.ALL)
    vimo=db(db.vimo.blog_id==db.blogposts.id).select(db.vimo.ALL)
    return dict(blogposts=blogposts,
blogposts_numcomments=blogposts_numcomments,
comments=comments,images=images,youtube=youtube,vimo=vimo)


.....................................

view:

{{for photo in images:}}
<div style="width:200px ; margin-left:200px">
<div style="width:200px;margin-left:50px">
     <p><b>{{=XML(photo.title)}}</b></p>
     </div>
<img width="200px"
     src="{{=URL('download', args=photo.image)}}" />
     <div style="width:200px;margin-left:50px">
     <p>{{=XML(photo.discription)}}</p>
     </div>
     <div>
{{pass}}

Reply via email to