2012-12-20 3 views
1

Flask 응용 프로그램 용 API를 구현해야하고 Flask-Restless에 대한 권장 사항을 확인했습니다. 나는이 도서관의 단지 기본적인 사용법을 가진 벽의 일종으로 달려 갔고 그것을 사용했던 누군가가 도움을 줄 것을 기대했다. Flask-Restless GET 요청이 SQLAlchemy 오류를 던졌습니다.

API를 관리자와 엔드 포인트를 작성

...

manager = APIManager(app, flask_sqlalchemy_db=db) 
manager.create_api(Gallery, methods=['GET', 'POST', 'PUT', 'DELETE']) 

... 새로운 항목을 삽입하기 위해, 이제

class Gallery(db.Model): 
    __tablename__ = 'galleries' 
    id = db.Column(db.Integer, primary_key=True) 

    title = db.Column(db.String(25)) 

    def __init__(self, title): 
     self.title = title 

로가는 모델은,이 jQuery를 아약스 POST를 사용 의뢰. 이것은 잘 작동합니다. 나는 sqlite db 뷰어에서 그것을 테스트했고 엔트리를 볼 수있다.

$('#form').on('submit', function(e){ 
     $.ajax({ 
      type: 'post', 
      url: '/api/galleries', 
      contentType:"binary/octet-stream", 
      data: JSON.stringify({'title': $('#title').val()}), 
      success: function(){ 
       alert('Success!'); 
      } 
     }); 
     e.preventDefault(); 
    }); 

여기에 문제가 있습니다. 내 브라우저에서 http://localhost:5000/api/galleries로 이동하여 다음과 같은 메시지가 얻을 :
NoResultFound을 sqlalchemy.orm.exc.NoResultFound

을 : 없음 행이 하나()

에 대한 발견되지 않았다 그것의 홀수는 것 api/galleries이 db 항목의 목록을 반환 할 때 one()을 실행하십시오. api/galleries/1을 시도하고 똑같은 오류가 발생합니다. 두 번 확인했고 기본 ID는 1입니다. 무엇이 누락 되었습니까?

+0

디버깅하고 단계별로 추적하여 실행되는 명령문을 찾으십시오. – codecool

답변

관련 문제