我想在我的模型中加载以下 json 数据。
{
"99popularity": 79.0,
"director": "William Cottrell",
"genre": [
"Animation",
" Family",
" Fantasy",
" Musical",
" Romance"
],
"imdb_score": 7.9,
"name": "Snow White and the Seven Dwarfs"
},
{
"99popularity": 84.0,
"director": "Stanley Kubrick",
"genre": [
"Adventure",
" Mystery",
" Sci-Fi"
],
"imdb_score": 8.4,
"name": "2001 : A Space Odyssey"
},
Run Code Online (Sandbox Code Playgroud)
我使用 json 数据的引用创建了两个模型
class Genre(models.Model):
name = models.CharField(max_length=30)
class Movie(models.Model):
popularity = models.FloatField(max_length=10)
director = models.CharField(max_length=30)
genre = models.ManyToManyField(Genre)
imdb_score = models.FloatField(max_length=10)
name = models.CharField(max_length=30)
Run Code Online (Sandbox Code Playgroud)
但在 …
我有一个表单,我想在其中显示多个选择外键字段。
表单.py
class ManagerGroupForm(forms.ModelForm):
class Meta:
model = UserGroup
fields = ['usergroup_group']
Run Code Online (Sandbox Code Playgroud)
模型.py
class UserGroup(models.Model):
usergroup_user = models.ForeignKey(User, on_delete=models.CASCADE)
usergroup_group = models.ForeignKey(Groups, on_delete=models.CASCADE)
Run Code Online (Sandbox Code Playgroud)
在我的表单中,我想usergroup_group多次选择。
我想更改字段名称。在我的模型字段名称以 prefix 开头timesheet。当我使用时,api我必须使用该timesheet前缀。我想删除该前缀而不是 keep jobs, clock_in_date, clock_out_date.... 如何重命名字段名称,以便当我从 api body 发送数据时应包含没有时间表前缀的名称
class TimesheetSerializer(serializers.ModelSerializer):
timesheet_hours = TimesheetHourSerializer(many=True, read_only=True)
class Meta:
model = TimesheetEntry
fields = [
'id',
'timesheet_jobs',
'timesheet_clock_in_date',
'timesheet_clock_in_time',
'timesheet_clock_out_date',
'timesheet_clock_out_time',
'timesheet_note',
'timesheet_hours',
]
Run Code Online (Sandbox Code Playgroud)
模型.py
class TimesheetEntry(models.Model):
timesheet_users = models.ForeignKey(User, on_delete=models.CASCADE,related_name='timesheet_users')
timesheet_jobs = models.ForeignKey(Jobs, on_delete=models.CASCADE,related_name='timesheet_jobs', blank=True, null=True)
timesheet_clock_in_date = models.DateField()
timesheet_clock_in_time = models.TimeField()
timesheet_clock_on = models.DateTimeField(auto_now_add=True)
timesheet_clock_in_by = models.ForeignKey(User, on_delete=models.CASCADE,related_name='timesheet_user_clock_in_by')
timesheet_clock_out_date = models.DateField(blank=True, null=True)
timesheet_clock_out_time = models.TimeField(blank=True, null=True)
Run Code Online (Sandbox Code Playgroud) django django-models django-forms django-views django-rest-framework
我在更新时遇到错误.当我添加数据时,它会成功添加.这个错误只是为了UpdateAPIView
{
"detail": "Method \"POST\" not allowed."
}
Run Code Online (Sandbox Code Playgroud)
urls.py
path('groups/update/<int:pk>', views.GroupsUpdateAPIView.as_view(), name='api_groups_update'),
Run Code Online (Sandbox Code Playgroud)
Views.py
class GroupsUpdateAPIView(generics.UpdateAPIView):
queryset = Groups.objects.all()
serializer_class = GroupsAddSerialzer
permission_classes = [UserIsAuthenticated]
def perform_update(self, serializer):
serializer.save(
group_updated_by = self.request.auth.application.user,
)
Run Code Online (Sandbox Code Playgroud)
Serializer.py
class GroupsAddSerialzer(serializers.ModelSerializer):
class Meta:
model = Groups
fields = ['group_name', 'group_description', 'group_status']
Run Code Online (Sandbox Code Playgroud) 我想了解np.zeros和之间有什么区别np.ones.在我的波纹管代码中都创建了黑色图像.但是np.zeros和的用途是什么np.ones?我什么时候应该使用它们.什么目的.我知道np.ones填充矩阵1,但目的是什么.我想创造什么white image
img = np.ones((512,512,3), np.uint8)
cv2.imshow('IMG', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
img = np.zeros((512,512,3), np.uint8)
cv2.imshow('IMG', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
Run Code Online (Sandbox Code Playgroud)