2012-09-26 2 views
0
class OperationCategoryOnlyForm(forms.ModelForm): 
    class Meta: 
     model = Operation 
     fields = ('operation_type', 'category', 'related_account',) 
     ordering = ['date'] 


OperationFormSet = modelformset_factory(Operation, form=OperationCategoryOnlyForm) 

이 아주 쉬운 질문이다 - 그것은 작동하지 않습니다, 그리고 어떤forms.modelform ordering?

답변

1

ordering이 모델 양식의 Meta 클래스에 대한 유효한 옵션이 아닙니다 (id로)가 기본값이 아닌 다른 분류하려면 어떻게하는 이유, 그래서 그것을 지정하는 것은 아무 것도하지 않을 것입니다.

특정 필드로 모델을 항상 주문하려는 경우 모델의 Meta 클래스에 ordering을 간단히 설정할 수 있습니다. 이는 다른 장소에서의 주문에 영향을 미칩니다. 장고 관리자.

class Operation(models.Model): 
    # field definitions 
    class Meta: 
     ordering = ('date',) 

당신은 단지 당신이 그것을 초기화 할 때이 해당 formset, provide a custom queryset의 순서를 변경하려면

.

OperationFormSet = modelformset_factory(Operation, form=OperationCategoryOnlyForm, queryset=Operation.objects.order_by('date')) 
+0

대단히 감사합니다 ... 전 답변, 기대 이상입니다. –