2013-06-25 3 views
1

나는 작은 문제를 가지고있다. 그러나 1 케이스가 있습니다 : uniq_text_id 필드는 자동으로 만들어야합니다.플라스크-관리자와 미리 입력 값

플라스크 관리자가 fiel uniq_text_id가 필요하다고 말했기 때문에 지금은 모드를 만들 수 없지만 미리 채워진 값은 표시하지 않습니다.

flask-admin 양식에 미리 채워진 값을 사용하거나 nullable=False 제약 조건을 삭제하지 않고이 문제를 피할 방법이 있습니까?

UPD : @codegeek은 양식에 표시된 자동 생성 필드에 대한 좋은 해결책을 제공했습니다. flask-admin 기능으로 제공되는 내 자신의 솔루션을 사용하면 명시 적으로 열을 표시하고 숨길 수 있습니다.

답변

3

모델에 대한 ModelView 클래스를 재정의해야합니다. 같은 뭔가 : - 읽기 문서도 간단히

class AModelAdmin(sqlamodel.ModelView): 

    uuidtext = uuid4() 
    form_args = dict(
       uniq_text_id=dict(default=uuidtext) 
      ) 

    def __init__(self, session): 
     super(AModelAdmin, self).__init__(AModel, session) 

그런 다음 당신은 당신의 관리자

admin.add_view(AModelAdmin(db.session)) 
+0

와우, 다른 해결책을 가져 주셔서 감사합니다! –

0

그것이 내 잘못이를 추가해야합니다. fillowing처럼 내 모델 뷰를 생성 :

class MyUserLessonModelView(MyModelView): 
    form_excluded_columns = ('uniq_text_id', 'created_by', 'created_date', 'modified_by', 'modified_date') 

그리고 모든 자동 생성 된 필드는 양식에서 사라된다.

+0

해결 방법을 찾으셨습니까? – Orny