2016-04-03 14 views
0

ile nasıl döndürebilirim? Bir nesneyi JSON'a geri döndürmeye çalışan aşağıdaki kodu kullanıyorum.Tek bir nesneyi Python'da Filsk

TypeError: <database_setup.MenuItem object at 0xb6071d8c> is not JSON serializable 

database_setup.py

class MenuItem(Base): 
    __tablename__ = 'menu_item' 

    name = Column(String(80), nullable=False) 
    id = Column(Integer, primary_key=True) 
    description = Column(String(250)) 
    price = Column(String(8)) 
    course = Column(String(250)) 
    restaurant_id = Column(Integer, ForeignKey('restaurant.id')) 
    restaurant = relationship(Restaurant) 

#JSON 
    @property 
    def serialize(self): 
     #return object 
     return { 
      'name' : self.name, 
      'description' : self.description, 
      'id' : self.id, 
      'price' : self.price, 
      'course' : self.course, 
     } 
+0

json ve json.dumps() kullanmadan önce verileri döndürme() –

cevap

1

ile çözüldü snips: Arayanın

#Make JSON API 
@app.route('/restaurant/<int:restaurant_id>/menu/<int:menu_id>/JSON') 
def restaurantMenuJSONONE(restaurant_id,menu_id): 
    item = session.query(MenuItem).filter_by(id = menu_id).one() 
    return jsonify(MenuItems=item) 

Hata alıyorum için Menuıtem nesneyi geri dönmek için çalışıyorum

return jsonify(MenuItem=item.serialize) 

Ayrıca b ile de çözdüm y liste oluşturma ve listeyi geçirme, ancak serileştirmeyi kullanmaktan çok daha fazla çalışma vardır.

+0

Ayrıca http: // stackoverflow'a da bakabilirsiniz. Bunu çözmek için genel bir yol gerekiyorsa, com/a/21411576/4620080 – YnkDK

İlgili konular