Skip to main content

How to fix gettext() got an unexpected keyword argument 'null' in Django

I have a model, a serializer, and a view like below, model

# get user model
User = get_user_model()

class Task(models.Model):
    "A task can be created by the user to save the task's details"

    COLOR_CHOICES = (
        ("red", _("Red")),
        ("gre", _("Green")),
        ("blu", _("Blue")),
        ("yel", _("Yellow")),
        ("pur", _("Purple")),
        ("ora", _("Orange")),
        ("bla", _("Black")),
        ("whi", _("White")),
        ("ind", _("Indigo")),
        ("lim", _("Lime")),
        ("cya", _("Cyan")),
    )
    title = models.CharField(max_length=150, blank=False, null=False, help_text=_("Enter your task's title"), verbose_name=_("title"))
    description = models.TextField(max_length=500, blank=True, null=True, help_text=_("Enter your task's description"), verbose_name=_("description"))
    user = models.ForeignKey(User, on_delete=models.CASCADE, related_name="utask", verbose_name=_("User"))
    time_to_start = models.DateTimeField(verbose_name=_("The time that the task should be started"), help_text=_("Enter the time that you want to start your task"))
    deadline = models.DateTimeField(verbose_name=_("The time that the task should be done"), help_text=_("Enter the time that you'll have done your task until it"))
    priority = models.IntegerField(choices=[(0, _("Not important")), (1, _("Low")), (2, _("Medium")), (3, _("High"))], default=1, verbose_name=_("Priority"), help_text=_("Choose the priority of your task"))
    color = models.CharField(max_length=3, choices=COLOR_CHOICES, default="whi", blank=True, null=True, verbose_name=_("Color"), help_text=_("Choose the color or the theme of your task"))
    notification = models.BooleanField(default=True, null=False, blank=True, verbose_name=_("Notification"), help_text=_("Do you want to receive a notification when the task is getting closer to the deadline or when it's passed that?"))

    def __str__(self):
        return self.title



class Plan(models.Model):
    "A plan is a thing which you can place your tasks into it"

    title = models.CharField(max_length=150, blank=False, null=False, help_text=_("Enter your plan's title"), verbose_name=_("Title"))
    description = models.TextField(max_length=1000, blank=True, null=True, help_text=_("Enter your plan's description"), verbose_name=_("description"))         
    user = models.ForeignKey(User, on_delete=models.CASCADE, related_name="uplan", verbose_name=_("User"))
    date = models.DateField(verbose_name=_("Date"), help_text=_("Enter the date that you want to plan", null=False, blank=False))
    task = models.ForeignKey(Task, on_delete=models.CASCADE, related_name="tplan", verbose_name=_("Task"), help_text=_("Choose the task that you want to be in your plan"))

    def __str__(self):
        return self.title

serilizer.py

class CreateTaskSerializer(serializers.ModelSerializer):
    class Meta:   
      model = Task
      exclude = ["user"]
      extra_kwargs = {
         'title': {'help_text': _("Enter your task's name")},
         'description': {'help_text': _("Enter your description")},
         'time_to_start': {'help_text': _("Enter your time to start your task")},
         'deadline': {'help_text': _("Enter your deadline")},
         'priority': {'help_text': _("Enter your priority for your task")},
         'color': {'help_text': _("Enter your color for your task")},
         'notification': {'help_text': _("Do you want to get notification for your task's status?")}, 
      } 

    def validate(self, data):
        if data['time_to_start'] >= data['deadline']:
            raise serializers.ValidationError(_("Time to start must be less than deadline"))
        return data

view.py

class CreateTaskApiView(APIView):
    """
    Create your new task with your entered data
    """

    permission_classes = [IsAuthenticated]

    def post(self, request):
        data = CreateTaskSerializer(data=request.data)
        if data.is_valid():
            data = data
            data.user = request.user
            data.save()
            return Response({
                "message": _("You've just created your task")
                }, status=status.HTTP_200_OK)
        else:
            return Response(data.errors, status=status.HTTP_400_BAD_REQUEST)

This error occurs when I want to run "py manage.py makemigrations" and then this error shows itself. I have no idea what is wrong with my code so I will be happy if you help me to find out the problem, furthermore, I'm sure that the problem is in the task model(or the task modules)

error: TypeError: gettext() got an unexpected keyword argument 'null'



source https://stackoverflow.com/questions/72680083/how-to-fix-gettext-got-an-unexpected-keyword-argument-null-in-django

Comments

Popular posts from this blog

How to show number of registered users in Laravel based on usertype?

i'm trying to display data from the database in the admin dashboard i used this: <?php use Illuminate\Support\Facades\DB; $users = DB::table('users')->count(); echo $users; ?> and i have successfully get the correct data from the database but what if i want to display a specific data for example in this user table there is "usertype" that specify if the user is normal user or admin i want to user the same code above but to display a specific usertype i tried this: <?php use Illuminate\Support\Facades\DB; $users = DB::table('users')->count()->WHERE usertype =admin; echo $users; ?> but it didn't work, what am i doing wrong? source https://stackoverflow.com/questions/68199726/how-to-show-number-of-registered-users-in-laravel-based-on-usertype

Why is my reports service not connecting?

I am trying to pull some data from a Postgres database using Node.js and node-postures but I can't figure out why my service isn't connecting. my routes/index.js file: const express = require('express'); const router = express.Router(); const ordersCountController = require('../controllers/ordersCountController'); const ordersController = require('../controllers/ordersController'); const weeklyReportsController = require('../controllers/weeklyReportsController'); router.get('/orders_count', ordersCountController); router.get('/orders', ordersController); router.get('/weekly_reports', weeklyReportsController); module.exports = router; My controllers/weeklyReportsController.js file: const weeklyReportsService = require('../services/weeklyReportsService'); const weeklyReportsController = async (req, res) => { try { const data = await weeklyReportsService; res.json({data}) console...

How to split a rinex file if I need 24 hours data

Trying to divide rinex file using the command gfzrnx but getting this error. While doing that getting this error msg 'gfzrnx' is not recognized as an internal or external command Trying to split rinex file using the command gfzrnx. also install'gfzrnx'. my doubt is I need to run this program in 'gfzrnx' or in 'cmdprompt'. I am expecting a rinex file with 24 hrs or 1 day data.I Have 48 hrs data in RINEX format. Please help me to solve this issue. source https://stackoverflow.com/questions/75385367/how-to-split-a-rinex-file-if-i-need-24-hours-data