Michael Bayer schrieb: > robert rottermann wrote: >> hi there, >> how can an instance of a class with a Table bound to it >> access the values of the values of "its" db record? >> >> >> what I would like to do is something like the following: >> class company(Base): >> __table__ = 'tblCompany' >> ... >> >> def listAssignedProducts(self): >> print assigned products >> >> >> class tblProducts_kl(Base2): >> ''' >> User item kl class >> ''' >> __tablename__ = 'tblProducts_kl' >> companies = relation( >> 'tblCompany', >> secondary=tables2['tblProductsSupplier_kl'], >> backref="related_klProducts", >> ) >> >> def assignMyselfToCompany(self, company_id): >> # add my self to company >> company = getCompanyByIs(company_id) >> >> now how do I proceed from here? >> >> > > why not use query() to find the company you're looking for ? thanks sorry that I was not clear enough.
I do get company easily (using a query) but I want to know the id of the product from within using the instance it is easy to get at the id like so: product_id = tblProducts_kl().id this product_id I would like to get from within a method of the tblProducts_kl class definition of so I can tell a tblProducts_kl instance to associate itself with a company. For this the method assignMyselfToCompany method needs to know the product_id of the instance for which it is called. I could do it like this class tblProducts_kl(Base2): ... def assignMyselfToCompany(self, product_id, company_id): product = session.query(tblProducts_kl).\ filter(tblProducts_kl.__table__.c.id ==product_id).all()[0] company = session.query(tblCompany).\ filter(tblCompany.__table__.c.id==company_id).all()[0] company.related_klProducts.append(product) product = tblProducts_kl() product.assignMyselfToCompany(product.id, company_id) however I would like to change the assignMyselfToCompany method in a way that I could achieve the same with: product = tblProducts_kl() product.assignMyselfToCompany(company_id) thanks again robert --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "sqlalchemy" group. To post to this group, send email to sqlalchemy@googlegroups.com To unsubscribe from this group, send email to sqlalchemy+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sqlalchemy?hl=en -~----------~----~----~----~------~----~------~--~---