please help in updates coulmns

28 views
Skip to first unread message

lavanya gowda

unread,
May 20, 2022, 2:41:50 PM5/20/22
to Django users
my humble request :-

please help me 

here i do have some columns called sub_task_name tht should every day update same perivous task_name but sub_task_value shld not update it shld give option to user to enter new value 

same criteria for task_name  shld  be same perivous  entered but 
user shld get new updation  for this columns

category = models.CharField(max_length=500,blank=True, null=True)
escalation1 = models.IntegerField(blank=True, null=True)
escalation2 = models.IntegerField(blank=True, null=True)
escalation3 = models.IntegerField(blank=True, null=True)
timethershold = models.IntegerField(blank=True, null=True)


my models.py 
class KanbanTask(models.Model):
STATUS_LEVEL = ((1, "Done"), (2, "In Progress"), (3, "On hold"), (4, "Assigned"))

regular_task_id = models.AutoField(primary_key=True)
task_name = models.CharField(max_length=100)
task_department_name = models.CharField(max_length=50, blank=True, null=True)
task_type = models.CharField(max_length=50, blank=True, null=True)
members = JSONField(blank=True, null=True)
task_description = models.CharField(max_length=200, blank=True, null=True)
task_files = models.FileField(upload_to=KanbanRegularTask_doc_directory_path, max_length=200,blank=True, null=True)
task_due_date = models.DateField(blank=True, null=True)
cron = models.CharField(max_length=50, blank=True, null=True)
previous_regular_task_id = models.PositiveIntegerField(blank=True, null=True)
status = models.IntegerField(choices=STATUS_LEVEL, blank=True)
knowledge_center = models.PositiveIntegerField(blank=True, null=True)
created_at = models.DateTimeField(auto_now=True)
updated_at = models.DateTimeField(blank=True, null=True)
category = models.CharField(max_length=500,blank=True, null=True)
escalation1 = models.IntegerField(blank=True, null=True)
escalation2 = models.IntegerField(blank=True, null=True)
escalation3 = models.IntegerField(blank=True, null=True)
timethershold = models.IntegerField(blank=True, null=True)

def __str__(self):
return self.task_name

def KanbanSubTask_doc_directory_path(instance, filename):
return "subtask/%s/%s/%s" %(instance.sub_task_name,instance.sub_task_id, filename)
class KanbanSubTask(models.Model):
sub_tasks = models.ForeignKey(KanbanTask, on_delete=models.CASCADE, related_name='kanbansub_task_regular', null=True, blank=True)
sub_task_id = models.AutoField(primary_key=True)
regular_task_id = models.PositiveIntegerField(blank=True, null=True)
sub_task_name = models.CharField(max_length=200, blank=True, null=True)
sub_task_value = models.CharField(max_length=200, blank=True, null=True)
sub_task_path = models.FileField(upload_to=KanbanSubTask_doc_directory_path, max_length=200,blank=True, null=True)
created_at = models.DateTimeField(auto_now=True)
updated_at = models.DateTimeField(blank=True, null=True)
value_threshold = models.FloatField(blank=True, null=True)

serilzers.py

class KanbanTaskSerializer(serializers.ModelSerializer):
class Meta:
model = KanbanTask
fields = '__all__'

class KanbanSubTaskSerializer(serializers.ModelSerializer):
class Meta:
model = KanbanSubTask
fields = '__all__'

views.py 

class KanbanTaskViewSet(viewsets.ModelViewSet):
pagination_class = None
queryset = KanbanTask.objects.exclude(Q(status=1)&Q(created_at__lte=now_for_filter.strftime('%Y-%m-%d')))
serializer_class = KanbanTaskSerializer

# def update(self, instance, validated_data):
# instance.category = validated_data.get('category', instance.category)
# instance.escalation1 = validated_data.get('escalation1', instance.escalation1)
# instance.escalation2 = validated_data.get('escalation2', instance.escalation2)
# return instance
#
# def create(self, validated_data):
# return Snippet.objects.create(**validated_data)

class KanbanSubTaskViewSet(viewsets.ModelViewSet):
pagination_class = None
queryset = KanbanSubTask.objects.all()
serializer_class = KanbanSubTaskSerializer

def partial_update(self, request, *args, **kwargs):
instance = self.get_object()
data = request.data
try:
kst= KanbanSubTask.objects.get(sub_tasks=data["sub_tasks"])
instance.kst = sub_tasks
except KeyError:
pass
instance.sub_task_id= request.data.sub_task_id("sub_task_id")
instance.sub_task_name = request.data.get("sub_task_name")
instance.sub_task_value = validated_data.get("sub_task_value")
instance.value_threshold = validated_data.get("value_threshold")
instance.save()
serializer = KanbanSubTaskSerializer(instance)
serializer.is_valid(raise_exception=True)
return Response(serializer.data)
# self.perform_update(serializer)
# return Response(serializer.data)


iam hardly trying from few days please guys help me out 
Reply all
Reply to author
Forward
0 new messages