我有一个登记表,允许用户输入他们的工资,并将其保存在我的模型中。我使用Django-money来存储salary字段。但是,在提交表单后,出现以下错误:
Object of type Money is not JSON serializable
这是我的代码:
型号.py:
from phonenumber_field.modelfields import PhoneNumberField
from djmoney.models.fields import MoneyField
class Profile(models.Model):
user = models.OneToOneField(User, on_delete = models.CASCADE, primary_key=True, related_name = 'register')
salary = MoneyField(max_digits=14, decimal_places=2, default_currency='USD')
视图.py:
def register(request):
if request.method == 'POST':
form = RegisterForm(request.POST)
if form.is_valid():
form.save()
return redirect("login") #place login here
else:
form = RegisterForm()
return render(request, 'myapp/signup.html', {'form': form})
表单.py:
class ProfileRegisterForm(forms.ModelForm):
class Meta:
model = Profile
fields = ['salary']
序列化程序.py:
class PrSerializer(serializers.ModelSerializer):
salary = MoneyField(max_digits=14, decimal_places=2, read_only = True)
class Meta:
model = Profile
fields = ('salary')
稍后我将使用API,但我总是得到上面显示的错误。如何避免错误并将薪资数据保存到模型中?你知道吗
目前没有回答
相关问题 更多 >
编程相关推荐