javascript
  • python
  • ajax
  • flask
  • flask-admin
  • 2014-02-10 5 views 6 likes 
    6

    Flask-Admin 앱에서 일대 다 필드를 확장하여 사용자 정의 Select2 필드를 사용하려고합니다. 나는 내보기 코드를 변경해야하는지 모르는 오전Flask-Admin 사용자 정의 Select2 Ajax 필드

    function format(data) { 
        if (!data.id) return data.text; // optgroup 
        return "<img class='flag' src='" + data.text + "'/>" + data.id; 
    }  
    function formatSelection(data) { 
        return data.id; 
    } 
    $("#da2").select2({ 
        maximumSelectionSize: 3, 
        formatResult: format, 
        formatSelection: formatSelection, 
        escapeMarkup: function(m) { return m; } 
    }); 
    

    : 필드의 자바 스크립트 코드는 다음과 같이 보입니다.

    class PostForm(wtf.Form): 
        title = fields.TextField('Title') 
        photos = fields.SelectField('Photo', widget=widgets.Select(multiple=True), id='da2') 
    
    class PostView(ModelView): 
        form = PostForm 
    
    def _feed_user_choices(self, mform): 
         photos = Photo.query.all() 
         mform.photos.choices = [(x.path, url_for('static', 
                   filename=form.thumbgen_filename(x.path))) for x in photos] 
         return mform 
    
    def create_form(self): 
        form = super(Post2View, self).create_form() 
        return self._feed_user_choices(form) 
    

    을하지만 아약스하지 그와 목록을 구문 분석하는 동안 오류가있다 :이 같은 뭔가를 시도했습니다.

    나는 가까이에 있다고 느끼지만 거기에 도착하기 위해 약간의 안내가 필요합니다. 도움을 주셔서 감사합니다.

    답변

    -1

    는 당신이 아마 필요한 것은이도 문법적으로 정확하지 람다

    def _feed_user_choices(self, mform): 
        mform.photos.choices = [(x.path, url_for('static',filename=form.thumbgen_filename(x.path))) for x in lambda: Photo.query.all()] 
        return mform 
    
    +2

    입니다. 'for x in lambda'는 결코 평가되지 않는 함수를 반복하려고합니다. –

     관련 문제

    • 관련 문제 없음^_^