flask - SQLALchemy filter_by() on a foreign key producting weird sql -


i'm attempting filter on foreign key , none of answers i've searched have lent results.

where query statements.

testing = comments\     .filter(comments.post_id==post_id) print(testing)  testing = comments\         .query.join(post, aliased=true)\         .filter(comments.post_id==post_id) print(testing) 

here's class definitions looks like

class comments(db.model):      comment_id =  db.column(db.integer, primary_key=true)     post_id = db.column(         db.integer,         db.foreignkey("post.post_id"),         nullable=false)  class post(db.model):     post_id =  db.column(db.integer, primary_key=true)  comments = db.relationship(         'comments',         backref='post',         lazy='dynamic') 

the actual sql queries being produced first , second case. both have weird :post_id_1 thing. in both cases i'm getting null set back.

from "comments"  "comments".post_id = :post_id_1  "comments" join "post" "post_1" on "post_1".post_id = "comments".post_id  "comments".post_id = :post_id_1 

if simple

select * comments post_id = 1

in mysql cli result set.

your model definition weird, following part not correctly indented:

comments = db.relationship(         'comments',         backref='post',         lazy='dynamic') 

or maybe it's copy/paste issue (just sure).

what call "weird :esc_id_1 thing" in fact named placeholder. replaced real value when sql statement executed (this avoid sql injection, driver responsible escape values).


Comments

Popular posts from this blog

Detect support for Shoutcast ICY MP3 without navigator.userAgent in Firefox? -

web - SVG not rendering properly in Firefox -

java - JavaFX 2 slider labelFormatter not being used -