2011-10-07 44 views
0

我有这个模型Django的错误模型的形式属性

40 class Item(models.Model): 
41  event = models.ForeignKey(Event) 
42  name = models.CharField('Item Name', max_length=50) 
43  description = models.CharField('Description', max_length=150, blank=True, null=True) 
44  quantity = models.IntegerField(blank=True, null=True) 
45  start = models.DateTimeField('Availability Start Date', blank=True, null=True) 
46  end = models.DateTimeField('Expiry Date', blank=True, null=True) 
47  cost_price = models.DecimalField('Cost Price Per Item', decimal_places=2, max_digits=10, blank=True, null=True) 
48  selling_price = models.DecimalField('Selling Price Per Item', decimal_places=2, max_digits=10, blank=True, null=True) 
49 
50  def __unicode__(self): 
51   return u"%s" % self.name 

而且

39 class ItemForm(forms.ModelForm): 
40  description = forms.CharField(label='Description', max_length=250, widget=forms.Textarea, required=False) 
41  image = forms.ImageField(label='Item Picture', max_length=50, required=False) 
42  start = forms.DateField(widget=SelectDateWidget, required=False) 
43  end = forms.DateField(widget=SelectDateWidget, required=False) 
55 
56  class Meta: 
57   model = Item 
58   fields = ('image', 
59     'name', 
60     'description', 
61     'quantity', 
62     'start', 
63     'end', 
64     'cost_price', 
65     'selling_price', 
66     ) 
67   widgets = {'cost_price': forms.TextInput(attrs={'onChange':'updateSellingPrice()'})} 

我想添加一个新的属性到cost_price场这个模型形式将依次调用以下js函数:

8 <script type="text/javascript"> 
    9  function updateSellingPrice() { 
10   $('#id_cost_price').change(function() { 
11    // get cost price 
12    var costPrice = $('id_cost_price').text(); 
13    // set selling price 
14    $('$id_selling_price').val(costPrice); 
16   }) 
17  } 
18 </script> 

我收到此错误时,包括在我的模型形式的线67 widgets = {'cost_price': forms.TextInput(attrs={'onChange':'updateSellingPrice()'})}

Exception Value: Caught ViewDoesNotExist while rendering: Could not import registration.views.item_details. View does not exist in module registration.views. 

当我从我的模型形式除去67行,一切工作/加载罚款。我认为Django的错误信息与我的实际错误是无关的。题外话题:我发现forms.py文件中的错误往往会引发错误消息,有时会让你误入歧途。

回答

0

我的愚蠢。我在做from django.forms import forms而不是from django import forms

0

也许您需要从您的模型创建表单并对其进行自定义,here是官方文档。

使用widgets与HTML定制属性