如何以模型形式将模型的pk值从createview传递到modelchoicefield?

时间:2019-02-08 07:18:27

标签: python django-forms django-views

我正在创建在线食品订购网络应用程序。因此,在菜品订购单中,我想要一个Modelchoicefield以便列出具有所选菜品的餐厅对象。所以我想将碟形对象的pk传递给Modelform。

views.py

class DishOrderCreate(CreateView):
    model = DishOrder
    template_name = 'FoodChain/dishcreate.html'
    form_class = OrderCreate

    def get_context_data(self, **kwargs):
        context = super(self).get_context_data(**kwargs)
        context['obj'] =self.kwargs.get('pk')
        return context

forms.py

class OrderCreate(forms.ModelForm):

    def __init__(self, *args, **kwargs):
        super(self).__init__(*args, **kwargs)
        ctx = kwargs.get('context', None)
        if ctx is not None:
            ob = ctx['obj']
     restaurent = forms.ModelChoiceField()

     class Meta:
         model = DishOrder
         fields = (
            'quantity',
            'restaurent',
         )

0 个答案:

没有答案