diff --git a/django_celery_beat/admin.py b/django_celery_beat/admin.py index 1b712314..0ba8a12f 100644 --- a/django_celery_beat/admin.py +++ b/django_celery_beat/admin.py @@ -123,8 +123,8 @@ class PeriodicTaskAdmin(admin.ModelAdmin): 'classes': ('extrapretty', 'wide'), }), (_('Schedule'), { - 'fields': ('interval', 'crontab', 'solar', 'clocked', - 'start_time', 'last_run_at', 'one_off'), + 'fields': ('interval', 'crontab', 'crontab_translation', 'solar', + 'clocked', 'start_time', 'last_run_at', 'one_off'), 'classes': ('extrapretty', 'wide'), }), (_('Arguments'), { @@ -138,9 +138,25 @@ class PeriodicTaskAdmin(admin.ModelAdmin): }), ) readonly_fields = ( - 'last_run_at', + 'last_run_at', 'crontab_translation', ) + def crontab_translation(self, obj): + return obj.crontab.human_readable + + change_form_template = 'admin/djcelery/change_periodictask_form.html' + + def changeform_view(self, request, object_id=None, form_url='', + extra_context=None): + extra_context = extra_context or {} + crontabs = CrontabSchedule.objects.all() + crontab_dict = {} + for crontab in crontabs: + crontab_dict[crontab.id] = crontab.human_readable + extra_context['readable_crontabs'] = crontab_dict + return super().changeform_view(request, object_id, + extra_context=extra_context) + def changelist_view(self, request, extra_context=None): extra_context = extra_context or {} scheduler = getattr(settings, 'CELERY_BEAT_SCHEDULER', None) @@ -247,8 +263,12 @@ class ClockedScheduleAdmin(admin.ModelAdmin): ) +class CrontabScheduleAdmin(admin.ModelAdmin): + list_display = ('__str__', 'human_readable') + + admin.site.register(IntervalSchedule) -admin.site.register(CrontabSchedule) +admin.site.register(CrontabSchedule, CrontabScheduleAdmin) admin.site.register(SolarSchedule) admin.site.register(ClockedSchedule, ClockedScheduleAdmin) admin.site.register(PeriodicTask, PeriodicTaskAdmin) diff --git a/django_celery_beat/locale/de/LC_MESSAGES/django.mo b/django_celery_beat/locale/de/LC_MESSAGES/django.mo index 87ea8bda..7e6b1d90 100644 Binary files a/django_celery_beat/locale/de/LC_MESSAGES/django.mo and b/django_celery_beat/locale/de/LC_MESSAGES/django.mo differ diff --git a/django_celery_beat/locale/de/LC_MESSAGES/django.po b/django_celery_beat/locale/de/LC_MESSAGES/django.po index 8ea78c78..3427ba51 100644 --- a/django_celery_beat/locale/de/LC_MESSAGES/django.po +++ b/django_celery_beat/locale/de/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-28 01:05+0000\n" +"POT-Creation-Date: 2022-12-22 18:56+0000\n" "PO-Revision-Date: 2022-08-28 03:29+0200\n" "Last-Translator: \n" "Language-Team: \n" @@ -18,316 +18,326 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: Poedit 3.1.1\n" -#: admin.py:60 +#: django_celery_beat/admin.py:60 msgid "Task (registered)" msgstr "Aufgabe (registriert)" -#: admin.py:64 +#: django_celery_beat/admin.py:64 msgid "Task (custom)" msgstr "Aufgabe (benutzerdefiniert)" -#: admin.py:81 +#: django_celery_beat/admin.py:81 msgid "Need name of task" msgstr "Name der Aufgabe benötigt" -#: admin.py:87 models.py:593 +#: django_celery_beat/admin.py:87 django_celery_beat/models.py:605 msgid "Only one can be set, in expires and expire_seconds" msgstr "" "Es kann nur eine festgelegt werden, \"Ablaufdatum\" oder \"Ablauf-Timedelta " "in Sekunden\"" -#: admin.py:97 +#: django_celery_beat/admin.py:97 #, python-format msgid "Unable to parse JSON: %s" msgstr "Ausserstande JSON zu parsen: %s" -#: admin.py:125 +#: django_celery_beat/admin.py:125 msgid "Schedule" msgstr "Zeitplan" -#: admin.py:130 +#: django_celery_beat/admin.py:130 msgid "Arguments" msgstr "Argumente" -#: admin.py:134 +#: django_celery_beat/admin.py:134 msgid "Execution Options" msgstr "Ausführungsoptionen" -#: admin.py:163 +#: django_celery_beat/admin.py:177 #, python-brace-format msgid "{0} task{1} {2} successfully {3}" msgstr "{0} Aufgabe{1} {2} erfolgreich {3}" -#: admin.py:166 admin.py:233 +#: django_celery_beat/admin.py:180 django_celery_beat/admin.py:247 msgid "was,were" msgstr "war,waren" -#: admin.py:175 +#: django_celery_beat/admin.py:189 msgid "Enable selected tasks" msgstr "Ausgewählte Aufgaben aktivieren" -#: admin.py:181 +#: django_celery_beat/admin.py:195 msgid "Disable selected tasks" msgstr "Ausgewählte Aufgaben deaktivieren" -#: admin.py:193 +#: django_celery_beat/admin.py:207 msgid "Toggle activity of selected tasks" msgstr "Aktivität ausgewählter Aufgaben ein-/ausschalten" -#: admin.py:214 -#, python-brace-format -msgid "task \"{0}\" not found" +#: django_celery_beat/admin.py:228 +#, fuzzy, python-brace-format +#| msgid "task \"{0}\" not found" +msgid "task \"{not_found_task_name}\" not found" msgstr "Aufgabe \"{0}\" nicht gefunden" -#: admin.py:230 +#: django_celery_beat/admin.py:244 #, python-brace-format msgid "{0} task{1} {2} successfully run" msgstr "{0} Aufgabe{1} {2} erfolgreich ausgeführt" -#: admin.py:236 +#: django_celery_beat/admin.py:250 msgid "Run selected tasks" msgstr "Ausgewählte Aufgaben ausführen" -#: apps.py:13 +#: django_celery_beat/apps.py:13 msgid "Periodic Tasks" msgstr "Periodische Aufgaben" -#: models.py:30 +#: django_celery_beat/models.py:30 msgid "Days" msgstr "Tage" -#: models.py:31 +#: django_celery_beat/models.py:31 msgid "Hours" msgstr "Stunden" -#: models.py:32 +#: django_celery_beat/models.py:32 msgid "Minutes" msgstr "Minuten" -#: models.py:33 +#: django_celery_beat/models.py:33 msgid "Seconds" msgstr "Sekunden" -#: models.py:34 +#: django_celery_beat/models.py:34 msgid "Microseconds" msgstr "Mikrosekunden" -#: models.py:38 +#: django_celery_beat/models.py:38 msgid "Day" msgstr "Tag" -#: models.py:39 +#: django_celery_beat/models.py:39 msgid "Hour" msgstr "Stunde" -#: models.py:40 +#: django_celery_beat/models.py:40 msgid "Minute" msgstr "Minute" -#: models.py:41 +#: django_celery_beat/models.py:41 msgid "Second" msgstr "Sekunde" -#: models.py:42 +#: django_celery_beat/models.py:42 msgid "Microsecond" msgstr "Mikrosekunde" -#: models.py:46 +#: django_celery_beat/models.py:46 msgid "Astronomical dawn" msgstr "Astronomische Morgendämmerung" -#: models.py:47 +#: django_celery_beat/models.py:47 msgid "Civil dawn" msgstr "Zivile Morgendämmerung" -#: models.py:48 +#: django_celery_beat/models.py:48 msgid "Nautical dawn" msgstr "Nautische Morgendämmerung" -#: models.py:49 +#: django_celery_beat/models.py:49 msgid "Astronomical dusk" msgstr "Astronomische Dämmerung" -#: models.py:50 +#: django_celery_beat/models.py:50 msgid "Civil dusk" msgstr "Zivile Dämmerung" -#: models.py:51 +#: django_celery_beat/models.py:51 msgid "Nautical dusk" msgstr "Nautische Dämmerung" -#: models.py:52 +#: django_celery_beat/models.py:52 msgid "Solar noon" msgstr "Sonnenmittag" -#: models.py:53 +#: django_celery_beat/models.py:53 msgid "Sunrise" msgstr "Sonnenaufgang" -#: models.py:54 +#: django_celery_beat/models.py:54 msgid "Sunset" msgstr "Sonnenuntergang" -#: models.py:88 +#: django_celery_beat/models.py:88 msgid "Solar Event" msgstr "Sonnenereigniss" -#: models.py:89 +#: django_celery_beat/models.py:89 msgid "The type of solar event when the job should run" msgstr "Die Art des Solarereignisses, wenn die Aufgabe ausgeführt werden soll" -#: models.py:93 +#: django_celery_beat/models.py:93 msgid "Latitude" msgstr "Breitengrad" -#: models.py:94 +#: django_celery_beat/models.py:94 msgid "Run the task when the event happens at this latitude" msgstr "" "Führen Sie diese Aufgabe aus, wenn das Ereignis in diesem Breitengrad " "auftritt" -#: models.py:99 +#: django_celery_beat/models.py:99 msgid "Longitude" msgstr "Längengrad" -#: models.py:100 +#: django_celery_beat/models.py:100 msgid "Run the task when the event happens at this longitude" msgstr "" "Führen Sie diese Aufgabe aus, wenn das Ereignis in diesem Längengrad auftritt" -#: models.py:107 +#: django_celery_beat/models.py:107 msgid "solar event" msgstr "Sonnenereigniss" -#: models.py:108 +#: django_celery_beat/models.py:108 msgid "solar events" msgstr "Sonnenereignisse" -#: models.py:158 +#: django_celery_beat/models.py:158 msgid "Number of Periods" msgstr "Anzahl der Perioden" -#: models.py:159 +#: django_celery_beat/models.py:159 msgid "Number of interval periods to wait before running the task again" msgstr "" "Anzahl der Intervallperioden, die gewartet werden sollen, bevor der Task " "erneut ausgeführt wird" -#: models.py:165 +#: django_celery_beat/models.py:165 msgid "Interval Period" msgstr "Intervallperiode" -#: models.py:166 +#: django_celery_beat/models.py:166 msgid "The type of period between task runs (Example: days)" msgstr "Der Typ des Zeitraums zwischen den Taskläufen (Beispiel: Tage)" -#: models.py:172 +#: django_celery_beat/models.py:172 msgid "interval" msgstr "Intervall" -#: models.py:173 +#: django_celery_beat/models.py:173 msgid "intervals" msgstr "Intervalle" -#: models.py:200 +#: django_celery_beat/models.py:200 msgid "every {}" msgstr "jede {}" -#: models.py:205 +#: django_celery_beat/models.py:205 msgid "every {} {}" msgstr "jede {} {}" -#: models.py:216 +#: django_celery_beat/models.py:216 msgid "Clock Time" msgstr "Uhrzeit" -#: models.py:217 +#: django_celery_beat/models.py:217 msgid "Run the task at clocked time" msgstr "Die Aufgabe zur Uhrzeit ausführen" -#: models.py:223 models.py:224 +#: django_celery_beat/models.py:223 django_celery_beat/models.py:224 msgid "clocked" msgstr "Getaktet" -#: models.py:264 +#: django_celery_beat/models.py:264 msgid "Minute(s)" msgstr "Minute(n)" -#: models.py:266 +#: django_celery_beat/models.py:266 msgid "Cron Minutes to Run. Use \"*\" for \"all\". (Example: \"0,30\")" msgstr "" "Cron Minuten zur Ausführung. Verwenden Sie \"*\" für \"alle\". (Beispiel: " "\"0,30\")" -#: models.py:271 +#: django_celery_beat/models.py:271 msgid "Hour(s)" msgstr "Stunde(n)" -#: models.py:273 +#: django_celery_beat/models.py:273 msgid "Cron Hours to Run. Use \"*\" for \"all\". (Example: \"8,20\")" msgstr "" "Cron Stunden zur Ausführung. Verwenden Sie \"*\" für \"alle\". (Beispiel: " "„8,20“)" -#: models.py:278 +#: django_celery_beat/models.py:278 msgid "Day(s) Of The Week" msgstr "Tag(e) der Woche" -#: models.py:280 -msgid "Cron Days Of The Week to Run. Use \"*\" for \"all\". (Example: \"0,5\")" +#: django_celery_beat/models.py:280 +#, fuzzy +#| msgid "" +#| "Cron Days Of The Week to Run. Use \"*\" for \"all\". (Example: \"0,5\")" +msgid "" +"Cron Days Of The Week to Run. Use \"*\" for \"all\", Sunday is 0 or 7, " +"Monday is 1. (Example: \"0,5\")" msgstr "" -"Cron Tage der Woche zur Ausführung. Verwenden Sie \"*\" für \"alle\". " -"(Beispiel: \"0,5\")" +"Cron Tage der Woche zur Ausführung. Verwenden Sie \"*\" für \"alle\", Sonntag ist 0 oder 7, " +"Montag ist 1. (Beispiel: \"0,5\")" -#: models.py:286 +#: django_celery_beat/models.py:286 msgid "Day(s) Of The Month" msgstr "Tag(e) des Monats" -#: models.py:288 +#: django_celery_beat/models.py:288 msgid "" "Cron Days Of The Month to Run. Use \"*\" for \"all\". (Example: \"1,15\")" msgstr "" "Cron Tage des Monats zur Ausführung. Verwenden Sie \"*\" für \"alle\". " "(Beispiel: \"1,15\")" -#: models.py:294 +#: django_celery_beat/models.py:294 msgid "Month(s) Of The Year" msgstr "Monat(e) des Jahres" -#: models.py:296 +#: django_celery_beat/models.py:296 +#, fuzzy +#| msgid "" +#| "Cron Months Of The Year to Run. Use \"*\" for \"all\". (Example: \"0,6\")" msgid "" -"Cron Months Of The Year to Run. Use \"*\" for \"all\". (Example: \"0,6\")" +"Cron Months (1-12) Of The Year to Run. Use \"*\" for \"all\". (Example: " +"\"1,12\")" msgstr "" "Cron Monate des Jahres zur Ausführung. Verwenden Sie \"*\" für \"alle\". " "(Beispiel: \"0,6\")" -#: models.py:304 +#: django_celery_beat/models.py:304 msgid "Cron Timezone" msgstr "Cron Zeitzone" -#: models.py:306 +#: django_celery_beat/models.py:306 msgid "Timezone to Run the Cron Schedule on. Default is UTC." msgstr "" "Zeitzone, in der der Cron-Zeitplan ausgeführt werden soll. Der Standardwert " "ist UTC." -#: models.py:312 +#: django_celery_beat/models.py:312 msgid "crontab" msgstr "Crontab" -#: models.py:313 +#: django_celery_beat/models.py:313 msgid "crontabs" msgstr "Crontabs" -#: models.py:397 +#: django_celery_beat/models.py:404 msgid "Name" msgstr "Name" -#: models.py:398 +#: django_celery_beat/models.py:405 msgid "Short Description For This Task" msgstr "Kurzbeschreibung für diese Aufgabe" -#: models.py:403 +#: django_celery_beat/models.py:410 msgid "" "The Name of the Celery Task that Should be Run. (Example: \"proj.tasks." "import_contacts\")" @@ -335,11 +345,11 @@ msgstr "" "Der Name des Celery-Tasks, der ausgeführt werden soll. (Beispiel: \"proj." "tasks.import_contacts\")" -#: models.py:411 +#: django_celery_beat/models.py:418 msgid "Interval Schedule" msgstr "Intervall-Zeitplan" -#: models.py:412 +#: django_celery_beat/models.py:419 msgid "" "Interval Schedule to run the task on. Set only one schedule type, leave the " "others null." @@ -347,11 +357,11 @@ msgstr "" "Intervallzeitplan zum Ausführen der Aufgabe. Legen Sie nur einen Zeitplantyp " "fest und lassen Sie die anderen null." -#: models.py:417 +#: django_celery_beat/models.py:424 msgid "Crontab Schedule" msgstr "Crontab-Zeitplan" -#: models.py:418 +#: django_celery_beat/models.py:425 msgid "" "Crontab Schedule to run the task on. Set only one schedule type, leave the " "others null." @@ -359,11 +369,11 @@ msgstr "" "Crontab Zeitplan zum Ausführen der Aufgabe. Legen Sie nur einen Zeitplantyp " "fest und lassen Sie die anderen null." -#: models.py:423 +#: django_celery_beat/models.py:430 msgid "Solar Schedule" msgstr "Solar-Zeitplan" -#: models.py:424 +#: django_celery_beat/models.py:431 msgid "" "Solar Schedule to run the task on. Set only one schedule type, leave the " "others null." @@ -371,11 +381,11 @@ msgstr "" "Solarzeitplan, um die Aufgabe auszuführen. Legen Sie nur einen Zeitplantyp " "fest und lassen Sie die anderen auf null." -#: models.py:429 +#: django_celery_beat/models.py:436 msgid "Clocked Schedule" msgstr "Getakteter-Zeitplan" -#: models.py:430 +#: django_celery_beat/models.py:437 msgid "" "Clocked Schedule to run the task on. Set only one schedule type, leave the " "others null." @@ -383,62 +393,62 @@ msgstr "" "Getakteter Zeitplan zum Ausführen der Aufgabe. Legen Sie nur einen " "Zeitplantyp fest und lassen Sie die anderen null." -#: models.py:436 +#: django_celery_beat/models.py:443 msgid "Positional Arguments" msgstr "Positionsargumente" -#: models.py:438 +#: django_celery_beat/models.py:445 msgid "JSON encoded positional arguments (Example: [\"arg1\", \"arg2\"])" msgstr "JSON-Codierte Positionsargumente (Beispiel: [\"arg1\", \"arg2\"])" -#: models.py:443 +#: django_celery_beat/models.py:450 msgid "Keyword Arguments" msgstr "Schlüsselwort-Argumente" -#: models.py:445 +#: django_celery_beat/models.py:452 msgid "JSON encoded keyword arguments (Example: {\"argument\": \"value\"})" msgstr "" "JSON-Codierte Schlüsselwortargumente (Beispiel: {\"argument\": \"wert\"})" -#: models.py:451 +#: django_celery_beat/models.py:458 msgid "Queue Override" msgstr "Warteschlangenüberschreibung" -#: models.py:453 +#: django_celery_beat/models.py:460 msgid "Queue defined in CELERY_TASK_QUEUES. Leave None for default queuing." msgstr "" "In CELERY_TASK_QUEUES definierte Warteschlange. Auf None lassen, für die " "Standardwarteschlange." -#: models.py:462 +#: django_celery_beat/models.py:469 msgid "Exchange" msgstr "Exchange" -#: models.py:463 +#: django_celery_beat/models.py:470 msgid "Override Exchange for low-level AMQP routing" msgstr "Override Exchange für Low-Level-AMQP-Routing" -#: models.py:467 +#: django_celery_beat/models.py:474 msgid "Routing Key" msgstr "Routing-Schlüssel" -#: models.py:468 +#: django_celery_beat/models.py:475 msgid "Override Routing Key for low-level AMQP routing" msgstr "Override Routing Key für Low-Level-AMQP-Routing" -#: models.py:472 +#: django_celery_beat/models.py:479 msgid "AMQP Message Headers" msgstr "AMQP-Nachrichtenheader" -#: models.py:473 +#: django_celery_beat/models.py:480 msgid "JSON encoded message headers for the AMQP message." msgstr "JSON-Codierte Nachrichtenheader für die AMQP-Nachricht." -#: models.py:479 +#: django_celery_beat/models.py:486 msgid "Priority" msgstr "Priorität" -#: models.py:481 +#: django_celery_beat/models.py:488 msgid "" "Priority Number between 0 and 255. Supported by: RabbitMQ, Redis (priority " "reversed, 0 is highest)." @@ -446,22 +456,22 @@ msgstr "" "Prioritätsnummer zwischen 0 und 255. Unterstützt von: RabbitMQ, Redis " "(Priorität umgekehrt, 0 ist am höchsten)." -#: models.py:486 +#: django_celery_beat/models.py:493 msgid "Expires Datetime" msgstr "Ablaufdatum" -#: models.py:488 +#: django_celery_beat/models.py:495 msgid "" "Datetime after which the schedule will no longer trigger the task to run" msgstr "" "Zeitpunkt, nach dem der Zeitplan die Ausführung die Aufgabe nicht mehr " "auslöst" -#: models.py:493 +#: django_celery_beat/models.py:500 msgid "Expires timedelta with seconds" msgstr "Ablauf-Timedelta in Sekunden" -#: models.py:495 +#: django_celery_beat/models.py:502 msgid "" "Timedelta with seconds which the schedule will no longer trigger the task to " "run" @@ -469,37 +479,37 @@ msgstr "" "Timedelta in Sekunden, die der Zeitplan nicht mehr auslöst, um die Aufgabe " "auszuführen" -#: models.py:501 +#: django_celery_beat/models.py:508 msgid "One-off Task" msgstr "Einmalige Aufgabe" -#: models.py:503 +#: django_celery_beat/models.py:510 msgid "If True, the schedule will only run the task a single time" msgstr "Wenn aktiv, wird die Aufgabe im Zeitplan nur einmal ausgeführt" -#: models.py:507 +#: django_celery_beat/models.py:514 msgid "Start Datetime" msgstr "Start-Datum" -#: models.py:509 +#: django_celery_beat/models.py:516 msgid "Datetime when the schedule should begin triggering the task to run" msgstr "" "Zeitpunkt, zu der der Zeitplan beginnen soll, die Ausführung der Aufgabe " "auszulösen" -#: models.py:514 +#: django_celery_beat/models.py:521 msgid "Enabled" msgstr "Aktiviert" -#: models.py:515 +#: django_celery_beat/models.py:522 msgid "Set to False to disable the schedule" msgstr "Deaktivieren zum deaktivieren -_-" -#: models.py:520 +#: django_celery_beat/models.py:527 msgid "Last Run Datetime" msgstr "Uhrzeit der letzten Ausführung" -#: models.py:522 +#: django_celery_beat/models.py:529 msgid "" "Datetime that the schedule last triggered the task to run. Reset to None if " "enabled is set to False." @@ -507,38 +517,38 @@ msgstr "" "Uhrzeit, zu der der letzte Zeitplan die Ausführung die Aufgabe ausgelöst " "hat. Setzt auf Keine zurück, wenn \"Aktiviert\" ist auf False gesetzt wird." -#: models.py:527 +#: django_celery_beat/models.py:534 msgid "Total Run Count" msgstr "Gesamtzahl der Durchgänge" -#: models.py:529 +#: django_celery_beat/models.py:536 msgid "Running count of how many times the schedule has triggered the task" msgstr "Laufende Zählung, wie oft der Zeitplan die Aufgabe ausgelöst hat" -#: models.py:534 +#: django_celery_beat/models.py:541 msgid "Last Modified" msgstr "Zuletzt geändert" -#: models.py:535 +#: django_celery_beat/models.py:542 msgid "Datetime that this PeriodicTask was last modified" msgstr "Uhrzeit zu dem diese periodische Aufgabe zuletzt modifiziert wurde" -#: models.py:539 +#: django_celery_beat/models.py:546 msgid "Description" msgstr "Beschreibung" -#: models.py:541 +#: django_celery_beat/models.py:548 msgid "Detailed description about the details of this Periodic Task" msgstr "Detaillierte Beschreibung der Details dieser periodischen Aufgabe" -#: models.py:550 +#: django_celery_beat/models.py:557 msgid "periodic task" msgstr "Periodische Aufgabe" -#: models.py:551 +#: django_celery_beat/models.py:558 msgid "periodic tasks" msgstr "Periodische Aufgaben" -#: templates/admin/djcelery/change_list.html:6 +#: django_celery_beat/templates/admin/djcelery/change_list.html:6 msgid "Home" msgstr "Start" diff --git a/django_celery_beat/locale/es/LC_MESSAGES/django.mo b/django_celery_beat/locale/es/LC_MESSAGES/django.mo index 89cd5dc2..aa7d417b 100644 Binary files a/django_celery_beat/locale/es/LC_MESSAGES/django.mo and b/django_celery_beat/locale/es/LC_MESSAGES/django.mo differ diff --git a/django_celery_beat/locale/es/LC_MESSAGES/django.po b/django_celery_beat/locale/es/LC_MESSAGES/django.po index 7317fcc6..0faa3b3b 100644 --- a/django_celery_beat/locale/es/LC_MESSAGES/django.po +++ b/django_celery_beat/locale/es/LC_MESSAGES/django.po @@ -257,9 +257,9 @@ msgid "Day(s) Of The Week" msgstr "Día(s) de la semana" #: django_celery_beat/models.py:274 -msgid "Cron Days Of The Week to Run. Use \"*\" for \"all\". (Example: \"0,5\")" +msgid "Cron Days Of The Week to Run. Use \"*\" for \"all\", Sunday is 0 or 7, Monday is 1. (Example: \"0,5\")" msgstr "" -"Días de la semana Cron cuando ejecutar. Usa \"*\" para \"todos\". (Ejemplo: " +"Días de la semana Cron cuando ejecutar. Usa \"*\" para \"todos\", Domingo es 0 o 7, Lunes es 1. (Ejemplo: " "\"0,5\")" #: django_celery_beat/models.py:280 diff --git a/django_celery_beat/locale/fr/LC_MESSAGES/django.mo b/django_celery_beat/locale/fr/LC_MESSAGES/django.mo index 340c1bb5..8adf0289 100644 Binary files a/django_celery_beat/locale/fr/LC_MESSAGES/django.mo and b/django_celery_beat/locale/fr/LC_MESSAGES/django.mo differ diff --git a/django_celery_beat/locale/fr/LC_MESSAGES/django.po b/django_celery_beat/locale/fr/LC_MESSAGES/django.po index a5a89297..b7f8d3b0 100644 --- a/django_celery_beat/locale/fr/LC_MESSAGES/django.po +++ b/django_celery_beat/locale/fr/LC_MESSAGES/django.po @@ -7,69 +7,86 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-11-10 14:36+0000\n" +"POT-Creation-Date: 2022-12-22 19:03+0000\n" "PO-Revision-Date: 2022-10-14 23:48+0200\n" "Last-Translator: Álvaro Mondéjar \n" -"Language-Team: n" -"Language: fr\n" +"Language-Team: nLanguage: fr\n" +"Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -#: django_celery_beat/admin.py:69 +#: django_celery_beat/admin.py:60 msgid "Task (registered)" msgstr "Tâche (enregistrée)" -#: django_celery_beat/admin.py:73 +#: django_celery_beat/admin.py:64 msgid "Task (custom)" msgstr "Tâche (personalisée)" -#: django_celery_beat/admin.py:90 +#: django_celery_beat/admin.py:81 msgid "Need name of task" msgstr "Besoin du nom de la tâche" -#: django_celery_beat/admin.py:96 django_celery_beat/models.py:595 +#: django_celery_beat/admin.py:87 django_celery_beat/models.py:605 msgid "Only one can be set, in expires and expire_seconds" msgstr "Seulement un peu être définie, soit expires ou expire_seconds" -#: django_celery_beat/admin.py:106 +#: django_celery_beat/admin.py:97 #, python-format msgid "Unable to parse JSON: %s" msgstr "Incapable d'analyser le JSON: %s" -#: django_celery_beat/admin.py:172 +#: django_celery_beat/admin.py:125 +#, fuzzy +#| msgid "Solar Schedule" +msgid "Schedule" +msgstr "Planification Solaire" + +#: django_celery_beat/admin.py:130 +#, fuzzy +#| msgid "Keyword Arguments" +msgid "Arguments" +msgstr "Arguments Nommés" + +#: django_celery_beat/admin.py:134 +msgid "Execution Options" +msgstr "" + +#: django_celery_beat/admin.py:177 #, python-brace-format msgid "{0} task{1} {2} successfully {3}" msgstr "{0} tâche{1} {2} avec succès {3}" -#: django_celery_beat/admin.py:175 django_celery_beat/admin.py:237 +#: django_celery_beat/admin.py:180 django_celery_beat/admin.py:247 msgid "was,were" msgstr "a été,ont été" -#: django_celery_beat/admin.py:184 +#: django_celery_beat/admin.py:189 msgid "Enable selected tasks" msgstr "Active les tâches sélectionnées" -#: django_celery_beat/admin.py:190 +#: django_celery_beat/admin.py:195 msgid "Disable selected tasks" msgstr "Désactive les tâches sélectionnées" -#: django_celery_beat/admin.py:202 +#: django_celery_beat/admin.py:207 msgid "Toggle activity of selected tasks" msgstr "Bascule l'activité des tâches sélectionnées" -#: django_celery_beat/admin.py:222 -#, python-brace-format -msgid "task \"{0}\" not found" +#: django_celery_beat/admin.py:228 +#, fuzzy, python-brace-format +#| msgid "task \"{0}\" not found" +msgid "task \"{not_found_task_name}\" not found" msgstr "tâche \"{0}\" introuvable" -#: django_celery_beat/admin.py:234 +#: django_celery_beat/admin.py:244 #, python-brace-format msgid "{0} task{1} {2} successfully run" msgstr "{0} tâche{1} {2} a fonctionnée avec succès" -#: django_celery_beat/admin.py:240 +#: django_celery_beat/admin.py:250 msgid "Run selected tasks" msgstr "Démarre les tâches sélectionnées" @@ -77,242 +94,247 @@ msgstr "Démarre les tâches sélectionnées" msgid "Periodic Tasks" msgstr "Tâches Périodique" -#: django_celery_beat/models.py:26 +#: django_celery_beat/models.py:30 msgid "Days" msgstr "Jours" -#: django_celery_beat/models.py:27 +#: django_celery_beat/models.py:31 msgid "Hours" msgstr "Heures" -#: django_celery_beat/models.py:28 +#: django_celery_beat/models.py:32 msgid "Minutes" msgstr "Minutes" -#: django_celery_beat/models.py:29 +#: django_celery_beat/models.py:33 msgid "Seconds" msgstr "Secondes" -#: django_celery_beat/models.py:30 +#: django_celery_beat/models.py:34 msgid "Microseconds" msgstr "Microsecondes" -#: django_celery_beat/models.py:34 +#: django_celery_beat/models.py:38 msgid "Day" msgstr "Jour" -#: django_celery_beat/models.py:35 +#: django_celery_beat/models.py:39 msgid "Hour" msgstr "Heure" -#: django_celery_beat/models.py:36 +#: django_celery_beat/models.py:40 msgid "Minute" msgstr "Minute" -#: django_celery_beat/models.py:37 +#: django_celery_beat/models.py:41 msgid "Second" msgstr "Seconde" -#: django_celery_beat/models.py:38 +#: django_celery_beat/models.py:42 msgid "Microsecond" msgstr "Microseconde" -#: django_celery_beat/models.py:42 +#: django_celery_beat/models.py:46 msgid "Astronomical dawn" msgstr "Aube astronomique" -#: django_celery_beat/models.py:43 +#: django_celery_beat/models.py:47 msgid "Civil dawn" msgstr "Aube civile" -#: django_celery_beat/models.py:44 +#: django_celery_beat/models.py:48 msgid "Nautical dawn" msgstr "Aube nautique" -#: django_celery_beat/models.py:45 +#: django_celery_beat/models.py:49 msgid "Astronomical dusk" msgstr "Crépuscule astronomique" -#: django_celery_beat/models.py:46 +#: django_celery_beat/models.py:50 msgid "Civil dusk" msgstr "Crépuscule civil" -#: django_celery_beat/models.py:47 +#: django_celery_beat/models.py:51 msgid "Nautical dusk" msgstr "Crépuscule nautique" -#: django_celery_beat/models.py:48 +#: django_celery_beat/models.py:52 msgid "Solar noon" msgstr "Midi solaire" -#: django_celery_beat/models.py:49 +#: django_celery_beat/models.py:53 msgid "Sunrise" msgstr "Lever du soleil" -#: django_celery_beat/models.py:50 +#: django_celery_beat/models.py:54 msgid "Sunset" msgstr "Coucher du soleil" -#: django_celery_beat/models.py:82 +#: django_celery_beat/models.py:88 msgid "Solar Event" msgstr "Évènement Solaire" -#: django_celery_beat/models.py:83 +#: django_celery_beat/models.py:89 msgid "The type of solar event when the job should run" msgstr "Le type d'évènement solaire pour lequel la tâche devrait démarrer" -#: django_celery_beat/models.py:87 +#: django_celery_beat/models.py:93 msgid "Latitude" msgstr "Latitude" -#: django_celery_beat/models.py:88 +#: django_celery_beat/models.py:94 msgid "Run the task when the event happens at this latitude" msgstr "Démarre cette tâche lorsque l'évènement se produit à cette latitude" -#: django_celery_beat/models.py:93 +#: django_celery_beat/models.py:99 msgid "Longitude" msgstr "Longitude" -#: django_celery_beat/models.py:94 +#: django_celery_beat/models.py:100 msgid "Run the task when the event happens at this longitude" msgstr "Démarre cette tâche lorsque cet évènement se produit à cette longitude" -#: django_celery_beat/models.py:101 +#: django_celery_beat/models.py:107 msgid "solar event" msgstr "évènement solaire" -#: django_celery_beat/models.py:102 +#: django_celery_beat/models.py:108 msgid "solar events" msgstr "évènements solaire" -#: django_celery_beat/models.py:151 +#: django_celery_beat/models.py:158 msgid "Number of Periods" msgstr "Nombre de Périodes" -#: django_celery_beat/models.py:152 +#: django_celery_beat/models.py:159 msgid "Number of interval periods to wait before running the task again" msgstr "" "Nombre d'intervale de périodes à attendre avant de démarrer la tâche à " "nouveau" -#: django_celery_beat/models.py:158 +#: django_celery_beat/models.py:165 msgid "Interval Period" msgstr "Période d'Intervale" -#: django_celery_beat/models.py:159 +#: django_celery_beat/models.py:166 msgid "The type of period between task runs (Example: days)" msgstr "Le type de période entre chaque démarrage de tâche (Exemple: jours)" -#: django_celery_beat/models.py:165 +#: django_celery_beat/models.py:172 msgid "interval" msgstr "intervale" -#: django_celery_beat/models.py:166 +#: django_celery_beat/models.py:173 msgid "intervals" msgstr "intervales" -#: django_celery_beat/models.py:194 +#: django_celery_beat/models.py:200 msgid "every {}" msgstr "chaque {}" -#: django_celery_beat/models.py:199 +#: django_celery_beat/models.py:205 msgid "every {} {}" msgstr "chaque {} {}" -#: django_celery_beat/models.py:210 +#: django_celery_beat/models.py:216 msgid "Clock Time" msgstr "Horaire" -#: django_celery_beat/models.py:211 +#: django_celery_beat/models.py:217 msgid "Run the task at clocked time" msgstr "Démarre la tâche à l'horaire définie" -#: django_celery_beat/models.py:217 django_celery_beat/models.py:517 -msgid "Set to False to disable the schedule" -msgstr "Mettre à Faux pour désactiver la planification" - #: django_celery_beat/models.py:223 django_celery_beat/models.py:224 msgid "clocked" msgstr "horaire" -#: django_celery_beat/models.py:266 +#: django_celery_beat/models.py:264 msgid "Minute(s)" msgstr "Minute⋅s" -#: django_celery_beat/models.py:268 +#: django_celery_beat/models.py:266 msgid "Cron Minutes to Run. Use \"*\" for \"all\". (Example: \"0,30\")" msgstr "" "Minutes Cron pour démarrer. Utilisez \"*\" pour \"toutes\". (Exemple: " "\"0,30\")" -#: django_celery_beat/models.py:273 +#: django_celery_beat/models.py:271 msgid "Hour(s)" msgstr "Heure⋅s" -#: django_celery_beat/models.py:275 +#: django_celery_beat/models.py:273 msgid "Cron Hours to Run. Use \"*\" for \"all\". (Example: \"8,20\")" msgstr "" "Heures Cron pour démarrer. Utilisez \"*\" pour \"toutes\". (Exemple: " "\"8,20\")" -#: django_celery_beat/models.py:280 +#: django_celery_beat/models.py:278 msgid "Day(s) Of The Week" msgstr "Jour⋅s de la semaine" -#: django_celery_beat/models.py:282 -msgid "Cron Days Of The Week to Run. Use \"*\" for \"all\". (Example: \"0,5\")" +#: django_celery_beat/models.py:280 +#, fuzzy +#| msgid "" +#| "Cron Days Of The Week to Run. Use \"*\" for \"all\". (Example: \"0,5\")" +msgid "" +"Cron Days Of The Week to Run. Use \"*\" for \"all\", Sunday is 0 or 7, " +"Monday is 1. (Example: \"0,5\")" msgstr "" "Jours De La Semaine Cron pour Démarrer. Utilisez \"*\" pour \"tous\". " "(Exemple: \"0,5\")" -#: django_celery_beat/models.py:288 +#: django_celery_beat/models.py:286 msgid "Day(s) Of The Month" msgstr "Jour⋅s Du mois" -#: django_celery_beat/models.py:290 +#: django_celery_beat/models.py:288 msgid "" "Cron Days Of The Month to Run. Use \"*\" for \"all\". (Example: \"1,15\")" msgstr "" "Jours Du mois Cron pour démarrer. Utilisez \"*\" pour \"tous\". (Exemple: " "\"1,15\")" -#: django_celery_beat/models.py:296 +#: django_celery_beat/models.py:294 msgid "Month(s) Of The Year" msgstr "Mois De L'année" -#: django_celery_beat/models.py:298 +#: django_celery_beat/models.py:296 +#, fuzzy +#| msgid "" +#| "Cron Months Of The Year to Run. Use \"*\" for \"all\". (Example: \"0,6\")" msgid "" -"Cron Months Of The Year to Run. Use \"*\" for \"all\". (Example: \"0,6\")" +"Cron Months (1-12) Of The Year to Run. Use \"*\" for \"all\". (Example: " +"\"1,12\")" msgstr "" -"Mois De L'année Cron pour démarrer. Utilisez \"*\" pour \"tous\". (Exemple:" -" ,6\")" +"Mois De L'année Cron pour démarrer. Utilisez \"*\" pour \"tous\". (Exemple: " +",6\")" -#: django_celery_beat/models.py:305 +#: django_celery_beat/models.py:304 msgid "Cron Timezone" msgstr "Fuseau horaire Cron" -#: django_celery_beat/models.py:307 +#: django_celery_beat/models.py:306 msgid "Timezone to Run the Cron Schedule on. Default is UTC." msgstr "" "Fuseau horaire pour lequel démarrer la planification Cron. UTC par défaut." -#: django_celery_beat/models.py:313 +#: django_celery_beat/models.py:312 msgid "crontab" msgstr "crontab" -#: django_celery_beat/models.py:314 +#: django_celery_beat/models.py:313 msgid "crontabs" msgstr "crontabs" -#: django_celery_beat/models.py:399 +#: django_celery_beat/models.py:404 msgid "Name" msgstr "Nom" -#: django_celery_beat/models.py:400 +#: django_celery_beat/models.py:405 msgid "Short Description For This Task" msgstr "Description courte pour cette tâche" -#: django_celery_beat/models.py:405 +#: django_celery_beat/models.py:410 msgid "" "The Name of the Celery Task that Should be Run. (Example: \"proj.tasks." "import_contacts\")" @@ -320,11 +342,11 @@ msgstr "" "Le nom de la tâche Celery qui devrait être démarrée. (Exemple: \"proj.tasks." "import_contacts\")" -#: django_celery_beat/models.py:413 +#: django_celery_beat/models.py:418 msgid "Interval Schedule" msgstr "Planification intervalée" -#: django_celery_beat/models.py:414 +#: django_celery_beat/models.py:419 msgid "" "Interval Schedule to run the task on. Set only one schedule type, leave the " "others null." @@ -332,11 +354,11 @@ msgstr "" "Planification intervalée pour démarrer cette tâche. Ne mettez qu'un seul " "type de planification, laissez les autres vides" -#: django_celery_beat/models.py:419 +#: django_celery_beat/models.py:424 msgid "Crontab Schedule" msgstr "Planification Crontab" -#: django_celery_beat/models.py:420 +#: django_celery_beat/models.py:425 msgid "" "Crontab Schedule to run the task on. Set only one schedule type, leave the " "others null." @@ -344,11 +366,11 @@ msgstr "" "Planification Crontab pour démarrer cette tâche. Ne mettez qu'un seul type " "de planification, laissez les autres vides" -#: django_celery_beat/models.py:425 +#: django_celery_beat/models.py:430 msgid "Solar Schedule" msgstr "Planification Solaire" -#: django_celery_beat/models.py:426 +#: django_celery_beat/models.py:431 msgid "" "Solar Schedule to run the task on. Set only one schedule type, leave the " "others null." @@ -356,11 +378,11 @@ msgstr "" "Planification Solaire pour démarrer cette tâche. Ne mettez qu'un seul type " "de planification, laissez les autres vides" -#: django_celery_beat/models.py:431 +#: django_celery_beat/models.py:436 msgid "Clocked Schedule" msgstr "Planification Horaire" -#: django_celery_beat/models.py:432 +#: django_celery_beat/models.py:437 msgid "" "Clocked Schedule to run the task on. Set only one schedule type, leave the " "others null." @@ -368,61 +390,61 @@ msgstr "" "Planification Horaire pour démarrer cette tâche. Ne mettez qu'un seul type " "de planification, laissez les autres vides" -#: django_celery_beat/models.py:438 +#: django_celery_beat/models.py:443 msgid "Positional Arguments" msgstr "Arguments Positionnels" -#: django_celery_beat/models.py:440 +#: django_celery_beat/models.py:445 msgid "JSON encoded positional arguments (Example: [\"arg1\", \"arg2\"])" msgstr "Arguments positionnels encodés en JSON (Exemple: [\"arg1\", \"arg2\"])" -#: django_celery_beat/models.py:445 +#: django_celery_beat/models.py:450 msgid "Keyword Arguments" msgstr "Arguments Nommés" -#: django_celery_beat/models.py:447 +#: django_celery_beat/models.py:452 msgid "JSON encoded keyword arguments (Example: {\"argument\": \"value\"})" msgstr "Arguments Nommés encodés en JSON (Exemple: {\"argument\": \"valeur\"})" -#: django_celery_beat/models.py:453 +#: django_celery_beat/models.py:458 msgid "Queue Override" msgstr "Surcharge de file d'attente" -#: django_celery_beat/models.py:455 +#: django_celery_beat/models.py:460 msgid "Queue defined in CELERY_TASK_QUEUES. Leave None for default queuing." msgstr "" "File d'attente définie dans CELERY_TASK_QEUEUS. Laissez Vide pour la mise en " "file d'attente par défaut." -#: django_celery_beat/models.py:464 +#: django_celery_beat/models.py:469 msgid "Exchange" msgstr "Échange" -#: django_celery_beat/models.py:465 +#: django_celery_beat/models.py:470 msgid "Override Exchange for low-level AMQP routing" msgstr "Surcharge d'échange pour un routage AMQP bas-niveau" -#: django_celery_beat/models.py:469 +#: django_celery_beat/models.py:474 msgid "Routing Key" msgstr "Clé de routage" -#: django_celery_beat/models.py:470 +#: django_celery_beat/models.py:475 msgid "Override Routing Key for low-level AMQP routing" msgstr "Surcharge de clé de routage pour un routage AMQP bas-niveau" -#: django_celery_beat/models.py:474 +#: django_celery_beat/models.py:479 msgid "AMQP Message Headers" msgstr "Message d'en-têtes AMQP" -#: django_celery_beat/models.py:475 +#: django_celery_beat/models.py:480 msgid "JSON encoded message headers for the AMQP message." msgstr "Message d'en-têtes encodés en JSON pour le message AMQP" -#: django_celery_beat/models.py:481 +#: django_celery_beat/models.py:486 msgid "Priority" msgstr "Priorité" -#: django_celery_beat/models.py:483 +#: django_celery_beat/models.py:488 msgid "" "Priority Number between 0 and 255. Supported by: RabbitMQ, Redis (priority " "reversed, 0 is highest)." @@ -430,22 +452,22 @@ msgstr "" "Valeur de priorité entre 0 et 255. Supporté par: RabbitMQ, Redis (priorité " "inversé, 0 est plus élevé)." -#: django_celery_beat/models.py:488 +#: django_celery_beat/models.py:493 msgid "Expires Datetime" msgstr "Date et heure d'expiration" -#: django_celery_beat/models.py:490 +#: django_celery_beat/models.py:495 msgid "" "Datetime after which the schedule will no longer trigger the task to run" msgstr "" "Date et heure après laquelle la planification ne déclenchera plus la tâche à " "démarrer" -#: django_celery_beat/models.py:495 +#: django_celery_beat/models.py:500 msgid "Expires timedelta with seconds" msgstr "Différence de temps en secondes d'expiration" -#: django_celery_beat/models.py:497 +#: django_celery_beat/models.py:502 msgid "" "Timedelta with seconds which the schedule will no longer trigger the task to " "run" @@ -453,33 +475,37 @@ msgstr "" "Différence de temps en secondes à laquelle la planification ne déclenchera " "plus la tâche à démarrer" -#: django_celery_beat/models.py:503 +#: django_celery_beat/models.py:508 msgid "One-off Task" msgstr "Tâche Ponctuelle" -#: django_celery_beat/models.py:505 +#: django_celery_beat/models.py:510 msgid "If True, the schedule will only run the task a single time" msgstr "Si Vrai, la planification ne démarrera la tâche qu'une seule fois" -#: django_celery_beat/models.py:507 -msgid "Enabled" -msgstr "Activé" - -#: django_celery_beat/models.py:509 +#: django_celery_beat/models.py:514 msgid "Start Datetime" msgstr "Date et heure de démarrage" -#: django_celery_beat/models.py:511 +#: django_celery_beat/models.py:516 msgid "Datetime when the schedule should begin triggering the task to run" msgstr "" "Date et heure à laquelle la planification devrait commencer à déclencher la " "tâche à démarrer" +#: django_celery_beat/models.py:521 +msgid "Enabled" +msgstr "Activé" + #: django_celery_beat/models.py:522 +msgid "Set to False to disable the schedule" +msgstr "Mettre à Faux pour désactiver la planification" + +#: django_celery_beat/models.py:527 msgid "Last Run Datetime" msgstr "Date et heure du dernier démarrage" -#: django_celery_beat/models.py:524 +#: django_celery_beat/models.py:529 msgid "" "Datetime that the schedule last triggered the task to run. Reset to None if " "enabled is set to False." @@ -487,34 +513,38 @@ msgstr "" "Date et heure à laquelle la planification à dernièrement déclenchée la tâche " "à démarrer. Est remis à Vide si activé est mis à Faux" -#: django_celery_beat/models.py:529 +#: django_celery_beat/models.py:534 msgid "Total Run Count" msgstr "Nombre total de démarrages" -#: django_celery_beat/models.py:531 +#: django_celery_beat/models.py:536 msgid "Running count of how many times the schedule has triggered the task" msgstr "Compte combien de fois la planification a déclenchée la tâche" -#: django_celery_beat/models.py:536 +#: django_celery_beat/models.py:541 msgid "Last Modified" msgstr "Dernière modification" -#: django_celery_beat/models.py:537 +#: django_celery_beat/models.py:542 msgid "Datetime that this PeriodicTask was last modified" msgstr "Date et heure de la dernière modification de cette Tâche Périodique" -#: django_celery_beat/models.py:541 +#: django_celery_beat/models.py:546 msgid "Description" msgstr "Description" -#: django_celery_beat/models.py:543 +#: django_celery_beat/models.py:548 msgid "Detailed description about the details of this Periodic Task" msgstr "Description détaillée à propos des détails de cette Tâche Périodique" -#: django_celery_beat/models.py:552 +#: django_celery_beat/models.py:557 msgid "periodic task" msgstr "tâche périodique" -#: django_celery_beat/models.py:553 +#: django_celery_beat/models.py:558 msgid "periodic tasks" msgstr "tâches périodique" + +#: django_celery_beat/templates/admin/djcelery/change_list.html:6 +msgid "Home" +msgstr "" diff --git a/django_celery_beat/locale/ko/LC_MESSAGES/django.mo b/django_celery_beat/locale/ko/LC_MESSAGES/django.mo index 3c773003..f392d067 100644 Binary files a/django_celery_beat/locale/ko/LC_MESSAGES/django.mo and b/django_celery_beat/locale/ko/LC_MESSAGES/django.mo differ diff --git a/django_celery_beat/locale/ko/LC_MESSAGES/django.po b/django_celery_beat/locale/ko/LC_MESSAGES/django.po index c776b03f..aed2c74a 100644 --- a/django_celery_beat/locale/ko/LC_MESSAGES/django.po +++ b/django_celery_beat/locale/ko/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-01-24 09:35+0000\n" +"POT-Creation-Date: 2022-12-22 19:03+0000\n" "PO-Revision-Date: 2022-10-14 23:48+0200\n" "Last-Translator: Jaeyoung Heo \n" "Language-Team: \n" @@ -16,59 +16,77 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: django_celery_beat/admin.py:64 + +#: django_celery_beat/admin.py:60 msgid "Task (registered)" msgstr "등록 태스크 목록" -#: django_celery_beat/admin.py:68 +#: django_celery_beat/admin.py:64 msgid "Task (custom)" msgstr "사용자 정의 태스크" -#: django_celery_beat/admin.py:85 +#: django_celery_beat/admin.py:81 msgid "Need name of task" msgstr "태스크 이름이 필요 합니다." -#: django_celery_beat/admin.py:91 django_celery_beat/models.py:586 +#: django_celery_beat/admin.py:87 django_celery_beat/models.py:605 msgid "Only one can be set, in expires and expire_seconds" msgstr "'만료 시각'과 '만료 기준 초' 중에 하나만 지정할 수 있습니다." -#: django_celery_beat/admin.py:101 +#: django_celery_beat/admin.py:97 #, python-format msgid "Unable to parse JSON: %s" msgstr "해석할 수 없습니다. JSON: %s" -#: django_celery_beat/admin.py:167 +#: django_celery_beat/admin.py:125 +#, fuzzy +#| msgid "Solar Schedule" +msgid "Schedule" +msgstr "Solar Schedule" + +#: django_celery_beat/admin.py:130 +#, fuzzy +#| msgid "Keyword Arguments" +msgid "Arguments" +msgstr "Keyword Arguments" + +#: django_celery_beat/admin.py:134 +msgid "Execution Options" +msgstr "" + +#: django_celery_beat/admin.py:177 #, python-brace-format msgid "{0} task{1} {2} successfully {3}" msgstr "{0} 태스크{1} {2} 성공적으로 {3}" -#: django_celery_beat/admin.py:170 django_celery_beat/admin.py:233 +#: django_celery_beat/admin.py:180 django_celery_beat/admin.py:247 msgid "was,were" msgstr "가,들이" -#: django_celery_beat/admin.py:179 +#: django_celery_beat/admin.py:189 msgid "Enable selected tasks" msgstr "선택된 태스크들을 활성화 합니다." -#: django_celery_beat/admin.py:185 +#: django_celery_beat/admin.py:195 msgid "Disable selected tasks" msgstr "선택된 태스크들을 비활성화 합니다." -#: django_celery_beat/admin.py:197 +#: django_celery_beat/admin.py:207 msgid "Toggle activity of selected tasks" msgstr "선택된 태스크들의 활성화 상태를 토글 합니다." -#: django_celery_beat/admin.py:218 -#, python-brace-format -msgid "task \"{0}\" not found" +#: django_celery_beat/admin.py:228 +#, fuzzy, python-brace-format +#| msgid "task \"{0}\" not found" +msgid "task \"{not_found_task_name}\" not found" msgstr "태스크 \"{0}\" 을 찾을 수 없습니다." -#: django_celery_beat/admin.py:230 +#: django_celery_beat/admin.py:244 #, python-brace-format msgid "{0} task{1} {2} successfully run" msgstr "{0} 태스크{1} {2} 성공적으로 작동했습니다." -#: django_celery_beat/admin.py:236 +#: django_celery_beat/admin.py:250 msgid "Run selected tasks" msgstr "선택된 태스크들을 실행 합니다." @@ -76,236 +94,245 @@ msgstr "선택된 태스크들을 실행 합니다." msgid "Periodic Tasks" msgstr "주기적인 태스크들" -#: django_celery_beat/models.py:26 +#: django_celery_beat/models.py:30 msgid "Days" msgstr "일" -#: django_celery_beat/models.py:27 +#: django_celery_beat/models.py:31 msgid "Hours" msgstr "시간" -#: django_celery_beat/models.py:28 +#: django_celery_beat/models.py:32 msgid "Minutes" msgstr "분" -#: django_celery_beat/models.py:29 +#: django_celery_beat/models.py:33 msgid "Seconds" msgstr "초" -#: django_celery_beat/models.py:30 +#: django_celery_beat/models.py:34 msgid "Microseconds" msgstr "마이크로초" -#: django_celery_beat/models.py:34 +#: django_celery_beat/models.py:38 msgid "Day" msgstr "일" -#: django_celery_beat/models.py:35 +#: django_celery_beat/models.py:39 msgid "Hour" msgstr "시" -#: django_celery_beat/models.py:36 +#: django_celery_beat/models.py:40 msgid "Minute" msgstr "분" -#: django_celery_beat/models.py:37 +#: django_celery_beat/models.py:41 msgid "Second" msgstr "초" -#: django_celery_beat/models.py:38 +#: django_celery_beat/models.py:42 msgid "Microsecond" msgstr "마이크로초" -#: django_celery_beat/models.py:42 +#: django_celery_beat/models.py:46 msgid "Astronomical dawn" msgstr "천문 박명" -#: django_celery_beat/models.py:43 +#: django_celery_beat/models.py:47 msgid "Civil dawn" msgstr "시민 박명" -#: django_celery_beat/models.py:44 +#: django_celery_beat/models.py:48 msgid "Nautical dawn" msgstr "항해 박명" -#: django_celery_beat/models.py:45 +#: django_celery_beat/models.py:49 msgid "Astronomical dusk" msgstr "천문 황혼" -#: django_celery_beat/models.py:46 +#: django_celery_beat/models.py:50 msgid "Civil dusk" msgstr "시민 황혼" -#: django_celery_beat/models.py:47 +#: django_celery_beat/models.py:51 msgid "Nautical dusk" msgstr "항해 황혼" -#: django_celery_beat/models.py:48 +#: django_celery_beat/models.py:52 msgid "Solar noon" msgstr "정오" -#: django_celery_beat/models.py:49 +#: django_celery_beat/models.py:53 msgid "Sunrise" msgstr "일출" -#: django_celery_beat/models.py:50 +#: django_celery_beat/models.py:54 msgid "Sunset" msgstr "일몰" -#: django_celery_beat/models.py:84 +#: django_celery_beat/models.py:88 msgid "Solar Event" msgstr "Solar Event" -#: django_celery_beat/models.py:85 +#: django_celery_beat/models.py:89 msgid "The type of solar event when the job should run" msgstr "태스크가 작동 해야 하는 Solar Event" -#: django_celery_beat/models.py:89 +#: django_celery_beat/models.py:93 msgid "Latitude" msgstr "위도" -#: django_celery_beat/models.py:90 +#: django_celery_beat/models.py:94 msgid "Run the task when the event happens at this latitude" msgstr "입력된 위도에서 Solar Event 가 발생하면 태스크를 실행합니다." -#: django_celery_beat/models.py:95 +#: django_celery_beat/models.py:99 msgid "Longitude" msgstr "경도" -#: django_celery_beat/models.py:96 +#: django_celery_beat/models.py:100 msgid "Run the task when the event happens at this longitude" msgstr "입력된 경도에서 Solar Event 가 발생하면 태스크를 실행합니다." -#: django_celery_beat/models.py:103 +#: django_celery_beat/models.py:107 msgid "solar event" msgstr "solar event" -#: django_celery_beat/models.py:104 +#: django_celery_beat/models.py:108 msgid "solar events" msgstr "solar events" -#: django_celery_beat/models.py:153 +#: django_celery_beat/models.py:158 msgid "Number of Periods" msgstr "매" -#: django_celery_beat/models.py:154 +#: django_celery_beat/models.py:159 msgid "Number of interval periods to wait before running the task again" msgstr "태스크의 다음 동작까지 몇 번의 간격을 기다릴 것인지 입력합니다." -#: django_celery_beat/models.py:160 +#: django_celery_beat/models.py:165 msgid "Interval Period" msgstr "간격" -#: django_celery_beat/models.py:161 +#: django_celery_beat/models.py:166 msgid "The type of period between task runs (Example: days)" msgstr "실행 간격 (예: 일, 시간)" -#: django_celery_beat/models.py:167 +#: django_celery_beat/models.py:172 msgid "interval" msgstr "interval" -#: django_celery_beat/models.py:168 +#: django_celery_beat/models.py:173 msgid "intervals" msgstr "intervals" -#: django_celery_beat/models.py:195 +#: django_celery_beat/models.py:200 msgid "every {}" msgstr "매 {}" -#: django_celery_beat/models.py:200 +#: django_celery_beat/models.py:205 msgid "every {} {}" msgstr "매 {} {}" -#: django_celery_beat/models.py:211 +#: django_celery_beat/models.py:216 msgid "Clock Time" msgstr "Clock Time" -#: django_celery_beat/models.py:212 +#: django_celery_beat/models.py:217 msgid "Run the task at clocked time" msgstr "Clock Time 기준으로 태스크를 작동합니다." -#: django_celery_beat/models.py:218 django_celery_beat/models.py:219 +#: django_celery_beat/models.py:223 django_celery_beat/models.py:224 msgid "clocked" msgstr "clocked" -#: django_celery_beat/models.py:258 +#: django_celery_beat/models.py:264 msgid "Minute(s)" msgstr "분" -#: django_celery_beat/models.py:260 +#: django_celery_beat/models.py:266 msgid "Cron Minutes to Run. Use \"*\" for \"all\". (Example: \"0,30\")" msgstr "Cron 의 분. 모두인 경우 \"*\". (예: \"0,30\")" -#: django_celery_beat/models.py:265 +#: django_celery_beat/models.py:271 msgid "Hour(s)" msgstr "시" -#: django_celery_beat/models.py:267 +#: django_celery_beat/models.py:273 msgid "Cron Hours to Run. Use \"*\" for \"all\". (Example: \"8,20\")" msgstr "Cron 의 시간. 모두인 경우 \"*\". (예: \"8,20\")" -#: django_celery_beat/models.py:272 +#: django_celery_beat/models.py:278 msgid "Day(s) Of The Week" msgstr "요일" -#: django_celery_beat/models.py:274 -msgid "Cron Days Of The Week to Run. Use \"*\" for \"all\". (Example: \"0,5\")" +#: django_celery_beat/models.py:280 +#, fuzzy +#| msgid "" +#| "Cron Days Of The Week to Run. Use \"*\" for \"all\". (Example: \"0,5\")" +msgid "" +"Cron Days Of The Week to Run. Use \"*\" for \"all\", Sunday is 0 or 7, " +"Monday is 1. (Example: \"0,5\")" msgstr "Cron 의 요일. 모두인 경우 \"*\". (예: \"0,5\")" -#: django_celery_beat/models.py:280 +#: django_celery_beat/models.py:286 msgid "Day(s) Of The Month" msgstr "일" -#: django_celery_beat/models.py:282 +#: django_celery_beat/models.py:288 msgid "" "Cron Days Of The Month to Run. Use \"*\" for \"all\". (Example: \"1,15\")" msgstr "Cron 의 일. 모두인 경우 \"*\". (예: \"1,15\")" -#: django_celery_beat/models.py:288 +#: django_celery_beat/models.py:294 msgid "Month(s) Of The Year" msgstr "월" -#: django_celery_beat/models.py:290 +#: django_celery_beat/models.py:296 +#, fuzzy +#| msgid "" +#| "Cron Months Of The Year to Run. Use \"*\" for \"all\". (Example: \"0,6\")" msgid "" -"Cron Months Of The Year to Run. Use \"*\" for \"all\". (Example: \"0,6\")" +"Cron Months (1-12) Of The Year to Run. Use \"*\" for \"all\". (Example: " +"\"1,12\")" msgstr "Cron 의 월. 모두인 경우 \"*\"." -#: django_celery_beat/models.py:297 +#: django_celery_beat/models.py:304 msgid "Cron Timezone" msgstr "타임존" -#: django_celery_beat/models.py:299 +#: django_celery_beat/models.py:306 msgid "Timezone to Run the Cron Schedule on. Default is UTC." msgstr "Cron 의 타임존. 기본값은 UTC" -#: django_celery_beat/models.py:305 +#: django_celery_beat/models.py:312 msgid "crontab" msgstr "crontab" -#: django_celery_beat/models.py:306 +#: django_celery_beat/models.py:313 msgid "crontabs" msgstr "crontabs" -#: django_celery_beat/models.py:390 +#: django_celery_beat/models.py:404 msgid "Name" msgstr "태스크 이름" -#: django_celery_beat/models.py:391 +#: django_celery_beat/models.py:405 msgid "Short Description For This Task" msgstr "태스크의 간단한 설명을 작성합니다." -#: django_celery_beat/models.py:396 +#: django_celery_beat/models.py:410 msgid "" "The Name of the Celery Task that Should be Run. (Example: \"proj.tasks." "import_contacts\")" msgstr "" "실행 되어야 하는 셀러리 태스크의 이름 (예: \"proj.tasks.import_contacts\")" -#: django_celery_beat/models.py:404 +#: django_celery_beat/models.py:418 msgid "Interval Schedule" msgstr "Interval Schedule" -#: django_celery_beat/models.py:405 +#: django_celery_beat/models.py:419 msgid "" "Interval Schedule to run the task on. Set only one schedule type, leave the " "others null." @@ -313,11 +340,11 @@ msgstr "" "태스크 실행 Interval Schedule. 한 종류의 스케줄 타입을 지정하면 나머지는 빈 " "값으로 두어야 합니다." -#: django_celery_beat/models.py:410 +#: django_celery_beat/models.py:424 msgid "Crontab Schedule" msgstr "Crontab Schedule" -#: django_celery_beat/models.py:411 +#: django_celery_beat/models.py:425 msgid "" "Crontab Schedule to run the task on. Set only one schedule type, leave the " "others null." @@ -325,11 +352,11 @@ msgstr "" "태스크 실행 Crontab Schedule. 한 종류의 스케줄 타입을 지정하면 나머지는 빈 값" "으로 두어야 합니다." -#: django_celery_beat/models.py:416 +#: django_celery_beat/models.py:430 msgid "Solar Schedule" msgstr "Solar Schedule" -#: django_celery_beat/models.py:417 +#: django_celery_beat/models.py:431 msgid "" "Solar Schedule to run the task on. Set only one schedule type, leave the " "others null." @@ -337,11 +364,11 @@ msgstr "" "태스크 실행을 위한 Solar Schedule. 한 종류의 스케줄 타입을 지정하면 나머지는 " "빈 값으로 두어야 합니다." -#: django_celery_beat/models.py:422 +#: django_celery_beat/models.py:436 msgid "Clocked Schedule" msgstr "Clocked Schedule" -#: django_celery_beat/models.py:423 +#: django_celery_beat/models.py:437 msgid "" "Clocked Schedule to run the task on. Set only one schedule type, leave the " "others null." @@ -349,59 +376,59 @@ msgstr "" "태스크 실행을 위한 Clocked Schedule. 한 종류의 스케줄 타입을 지정하면 나머지" "는 빈 값으로 두어야 합니다." -#: django_celery_beat/models.py:429 +#: django_celery_beat/models.py:443 msgid "Positional Arguments" msgstr "Positional Arguments" -#: django_celery_beat/models.py:431 +#: django_celery_beat/models.py:445 msgid "JSON encoded positional arguments (Example: [\"arg1\", \"arg2\"])" msgstr "JSON 형태로 인코딩된 위치 인자 (예: [\"arg1\", \"arg2\"])" -#: django_celery_beat/models.py:436 +#: django_celery_beat/models.py:450 msgid "Keyword Arguments" msgstr "Keyword Arguments" -#: django_celery_beat/models.py:438 +#: django_celery_beat/models.py:452 msgid "JSON encoded keyword arguments (Example: {\"argument\": \"value\"})" msgstr "JSON 형태로 인코딩된 키워드 인자 (예: {\"argument\": \"value\"})" -#: django_celery_beat/models.py:444 +#: django_celery_beat/models.py:458 msgid "Queue Override" msgstr "Queue Override" -#: django_celery_beat/models.py:446 +#: django_celery_beat/models.py:460 msgid "Queue defined in CELERY_TASK_QUEUES. Leave None for default queuing." msgstr "CELERY_TASK_QUEES 에 정의된 큐, 빈 값으로 두면 기본 큐를 사용합니다." -#: django_celery_beat/models.py:455 +#: django_celery_beat/models.py:469 msgid "Exchange" msgstr "Exchange" -#: django_celery_beat/models.py:456 +#: django_celery_beat/models.py:470 msgid "Override Exchange for low-level AMQP routing" msgstr "low-level AMQP 를 원하는 경우 Exchange 를 오버라이드 합니다." -#: django_celery_beat/models.py:460 +#: django_celery_beat/models.py:474 msgid "Routing Key" msgstr "Routing Key" -#: django_celery_beat/models.py:461 +#: django_celery_beat/models.py:475 msgid "Override Routing Key for low-level AMQP routing" msgstr "low-level AMQP 를 원하는 경우 Routing Key 를 오버라이드 합니다." -#: django_celery_beat/models.py:465 +#: django_celery_beat/models.py:479 msgid "AMQP Message Headers" msgstr "AMQP 메시지 헤더" -#: django_celery_beat/models.py:466 +#: django_celery_beat/models.py:480 msgid "JSON encoded message headers for the AMQP message." msgstr "AMQP 메시지를 위해 JSON 형식으로 인코딩 된 메시지 헤더" -#: django_celery_beat/models.py:472 +#: django_celery_beat/models.py:486 msgid "Priority" msgstr "Priority" -#: django_celery_beat/models.py:474 +#: django_celery_beat/models.py:488 msgid "" "Priority Number between 0 and 255. Supported by: RabbitMQ, Redis (priority " "reversed, 0 is highest)." @@ -409,54 +436,54 @@ msgstr "" "0과 255사이의 우선 순위 숫자. RabbitMQ, Redis 에서 지원합니다. (0이 높은 우선" "순위를 가집니다.)" -#: django_celery_beat/models.py:479 +#: django_celery_beat/models.py:493 msgid "Expires Datetime" msgstr "만료 일시" -#: django_celery_beat/models.py:481 +#: django_celery_beat/models.py:495 msgid "" "Datetime after which the schedule will no longer trigger the task to run" msgstr "만료 일시 이후에는 태스크가 작동하지 않습니다." -#: django_celery_beat/models.py:486 +#: django_celery_beat/models.py:500 msgid "Expires timedelta with seconds" msgstr "초 단위 만료 시간" -#: django_celery_beat/models.py:488 +#: django_celery_beat/models.py:502 msgid "" "Timedelta with seconds which the schedule will no longer trigger the task to " "run" msgstr "입력된 만료 초가 지난 뒤에는 태스크가 작동하지 않습니다." -#: django_celery_beat/models.py:494 +#: django_celery_beat/models.py:508 msgid "One-off Task" msgstr "One-off 태스크" -#: django_celery_beat/models.py:496 +#: django_celery_beat/models.py:510 msgid "If True, the schedule will only run the task a single time" msgstr "체크된 경우, 태스크는 한 번만 실행 됩니다." -#: django_celery_beat/models.py:500 +#: django_celery_beat/models.py:514 msgid "Start Datetime" msgstr "시작 일시" -#: django_celery_beat/models.py:502 +#: django_celery_beat/models.py:516 msgid "Datetime when the schedule should begin triggering the task to run" msgstr "태스크 스케줄의 작동 시작 일시" -#: django_celery_beat/models.py:507 +#: django_celery_beat/models.py:521 msgid "Enabled" msgstr "활성화 여부" -#: django_celery_beat/models.py:508 +#: django_celery_beat/models.py:522 msgid "Set to False to disable the schedule" msgstr "체크를 해제하면 비활성화가 됩니다." -#: django_celery_beat/models.py:513 +#: django_celery_beat/models.py:527 msgid "Last Run Datetime" msgstr "최종 작동 일시" -#: django_celery_beat/models.py:515 +#: django_celery_beat/models.py:529 msgid "" "Datetime that the schedule last triggered the task to run. Reset to None if " "enabled is set to False." @@ -464,35 +491,35 @@ msgstr "" "태스크가 최종적으로 작동한 시간. 만약 테스크가 비활성화 된 경우 None 으로 지" "정됩니다." -#: django_celery_beat/models.py:520 +#: django_celery_beat/models.py:534 msgid "Total Run Count" msgstr "실행 횟수" -#: django_celery_beat/models.py:522 +#: django_celery_beat/models.py:536 msgid "Running count of how many times the schedule has triggered the task" msgstr "태스크의 실행 횟수" -#: django_celery_beat/models.py:527 +#: django_celery_beat/models.py:541 msgid "Last Modified" msgstr "최종 변경 일시" -#: django_celery_beat/models.py:528 +#: django_celery_beat/models.py:542 msgid "Datetime that this PeriodicTask was last modified" msgstr "태스크가 최종적으로 변경된 일시" -#: django_celery_beat/models.py:532 +#: django_celery_beat/models.py:546 msgid "Description" msgstr "설명" -#: django_celery_beat/models.py:534 +#: django_celery_beat/models.py:548 msgid "Detailed description about the details of this Periodic Task" msgstr "태스크에 대한 상세 설명을 작성합니다." -#: django_celery_beat/models.py:543 +#: django_celery_beat/models.py:557 msgid "periodic task" msgstr "periodic task" -#: django_celery_beat/models.py:544 +#: django_celery_beat/models.py:558 msgid "periodic tasks" msgstr "periodic tasks" diff --git a/django_celery_beat/locale/ru/LC_MESSAGES/django.mo b/django_celery_beat/locale/ru/LC_MESSAGES/django.mo index a3b2f477..f2266f24 100644 Binary files a/django_celery_beat/locale/ru/LC_MESSAGES/django.mo and b/django_celery_beat/locale/ru/LC_MESSAGES/django.mo differ diff --git a/django_celery_beat/locale/ru/LC_MESSAGES/django.po b/django_celery_beat/locale/ru/LC_MESSAGES/django.po index 05232c61..626e6d58 100644 --- a/django_celery_beat/locale/ru/LC_MESSAGES/django.po +++ b/django_celery_beat/locale/ru/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: 1.5.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-06-14 17:06+1000\n" +"POT-Creation-Date: 2022-12-22 19:03+0000\n" "PO-Revision-Date: 2022-10-14 23:48+0200\n" "Last-Translator: Daniil Kharkov \n" "Language-Team: LANGUAGE \n" @@ -15,83 +15,104 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" -"%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n" -"%100>=11 && n%100<=14)? 2 : 3);\n" +"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && " +"n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || " +"(n%100>=11 && n%100<=14)? 2 : 3);\n" -#: django_celery_beat/admin.py:71 +#: django_celery_beat/admin.py:60 msgid "Task (registered)" msgstr "Задача (зарегистрированные)" -#: django_celery_beat/admin.py:75 +#: django_celery_beat/admin.py:64 msgid "Task (custom)" msgstr "Задача (пользовательская)" -#: django_celery_beat/admin.py:92 +#: django_celery_beat/admin.py:81 msgid "Need name of task" msgstr "Укажите название задачи" -#: django_celery_beat/admin.py:103 +#: django_celery_beat/admin.py:87 django_celery_beat/models.py:605 +msgid "Only one can be set, in expires and expire_seconds" +msgstr "" + +#: django_celery_beat/admin.py:97 #, python-format msgid "Unable to parse JSON: %s" msgstr "Невозможно проанализировать JSON: %s" -#: django_celery_beat/admin.py:165 +#: django_celery_beat/admin.py:125 +#, fuzzy +#| msgid "Solar Schedule" +msgid "Schedule" +msgstr "Астрономическое" + +#: django_celery_beat/admin.py:130 +#, fuzzy +#| msgid "Keyword Arguments" +msgid "Arguments" +msgstr "Именованные аргументы" + +#: django_celery_beat/admin.py:134 +msgid "Execution Options" +msgstr "" + +#: django_celery_beat/admin.py:177 #, python-brace-format msgid "{0} task{1} {2} successfully {3}" msgstr "{0} задача {1} {2} успешно {3}" -#: django_celery_beat/admin.py:168 django_celery_beat/admin.py:230 +#: django_celery_beat/admin.py:180 django_celery_beat/admin.py:247 msgid "was,were" msgstr "был, были" -#: django_celery_beat/admin.py:177 +#: django_celery_beat/admin.py:189 msgid "Enable selected tasks" msgstr "Включить выбранные задачи" -#: django_celery_beat/admin.py:183 +#: django_celery_beat/admin.py:195 msgid "Disable selected tasks" msgstr "Выключить выбранные задачи" -#: django_celery_beat/admin.py:195 +#: django_celery_beat/admin.py:207 msgid "Toggle activity of selected tasks" msgstr "Переключить активность выбранных задач" -#: django_celery_beat/admin.py:215 -#, python-brace-format -msgid "task \"{0}\" not found" +#: django_celery_beat/admin.py:228 +#, fuzzy, python-brace-format +#| msgid "task \"{0}\" not found" +msgid "task \"{not_found_task_name}\" not found" msgstr "задача \"{0}\" не найдена" -#: django_celery_beat/admin.py:227 +#: django_celery_beat/admin.py:244 #, python-brace-format msgid "{0} task{1} {2} successfully run" msgstr "{0} задача{1} {2} успешно выполнена" -#: django_celery_beat/admin.py:233 +#: django_celery_beat/admin.py:250 msgid "Run selected tasks" msgstr "Запустить выбранные задачи" -#: django_celery_beat/apps.py:15 +#: django_celery_beat/apps.py:13 msgid "Periodic Tasks" msgstr "Периодические Задачи" -#: django_celery_beat/models.py:29 +#: django_celery_beat/models.py:30 msgid "Days" msgstr "Дни" -#: django_celery_beat/models.py:30 +#: django_celery_beat/models.py:31 msgid "Hours" msgstr "Часы" -#: django_celery_beat/models.py:31 +#: django_celery_beat/models.py:32 msgid "Minutes" msgstr "Минуты" -#: django_celery_beat/models.py:32 +#: django_celery_beat/models.py:33 msgid "Seconds" msgstr "Секунды" -#: django_celery_beat/models.py:33 +#: django_celery_beat/models.py:34 msgid "Microseconds" msgstr "Микросекунды" @@ -115,328 +136,403 @@ msgstr "Секунды" msgid "Microsecond" msgstr "Микросекунды" +#: django_celery_beat/models.py:46 +msgid "Astronomical dawn" +msgstr "" + +#: django_celery_beat/models.py:47 +msgid "Civil dawn" +msgstr "" + +#: django_celery_beat/models.py:48 +msgid "Nautical dawn" +msgstr "" + +#: django_celery_beat/models.py:49 +msgid "Astronomical dusk" +msgstr "" + +#: django_celery_beat/models.py:50 +msgid "Civil dusk" +msgstr "" + +#: django_celery_beat/models.py:51 +msgid "Nautical dusk" +msgstr "" + +#: django_celery_beat/models.py:52 +#, fuzzy +#| msgid "Solar Event" +msgid "Solar noon" +msgstr "Астрономическое" + +#: django_celery_beat/models.py:53 +msgid "Sunrise" +msgstr "" + #: django_celery_beat/models.py:54 +msgid "Sunset" +msgstr "" + +#: django_celery_beat/models.py:88 msgid "Solar Event" msgstr "Астрономическое" -#: django_celery_beat/models.py:55 +#: django_celery_beat/models.py:89 msgid "The type of solar event when the job should run" msgstr "Тип астрономического события для запуска задачи" -#: django_celery_beat/models.py:59 +#: django_celery_beat/models.py:93 msgid "Latitude" msgstr "Широта" -#: django_celery_beat/models.py:60 +#: django_celery_beat/models.py:94 msgid "Run the task when the event happens at this latitude" msgstr "Запуск задачи, когда событие происходит на данной широте" -#: django_celery_beat/models.py:65 +#: django_celery_beat/models.py:99 msgid "Longitude" msgstr "Долгота" -#: django_celery_beat/models.py:66 +#: django_celery_beat/models.py:100 msgid "Run the task when the event happens at this longitude" msgstr "Запуск задачи, когда событие происходит на данной долготе" -#: django_celery_beat/models.py:73 +#: django_celery_beat/models.py:107 msgid "solar event" msgstr "астрономическое событие" -#: django_celery_beat/models.py:74 +#: django_celery_beat/models.py:108 msgid "solar events" msgstr "астрономические события" -#: django_celery_beat/models.py:124 +#: django_celery_beat/models.py:158 msgid "Number of Periods" msgstr "Число периодов" -#: django_celery_beat/models.py:125 +#: django_celery_beat/models.py:159 msgid "Number of interval periods to wait before running the task again" msgstr "Количество периодов интервала перед новым запуском задачи" -#: django_celery_beat/models.py:131 +#: django_celery_beat/models.py:165 msgid "Interval Period" msgstr "Интервальный период" -#: django_celery_beat/models.py:132 +#: django_celery_beat/models.py:166 msgid "The type of period between task runs (Example: days)" msgstr "Тип периода между запусками задачи (Например: дни)" -#: django_celery_beat/models.py:138 +#: django_celery_beat/models.py:172 msgid "interval" msgstr "интервал" -#: django_celery_beat/models.py:139 +#: django_celery_beat/models.py:173 msgid "intervals" msgstr "интервалы" -#: django_celery_beat/models.py:162 -#, python-brace-format +#: django_celery_beat/models.py:200 msgid "every {}" msgstr "каждые {}" -#: django_celery_beat/models.py:163 -#, python-brace-format +#: django_celery_beat/models.py:205 msgid "every {} {}" msgstr "каждые {} {}" -#: django_celery_beat/models.py:175 +#: django_celery_beat/models.py:216 msgid "Clock Time" msgstr "Время" -#: django_celery_beat/models.py:176 +#: django_celery_beat/models.py:217 msgid "Run the task at clocked time" msgstr "Запуск задачи в указанное время" -#: django_celery_beat/models.py:181 django_celery_beat/models.py:475 -msgid "Enabled" -msgstr "Активна" - -#: django_celery_beat/models.py:182 django_celery_beat/models.py:476 -msgid "Set to False to disable the schedule" -msgstr "Выключите для отключения расписания" - -#: django_celery_beat/models.py:188 django_celery_beat/models.py:189 +#: django_celery_beat/models.py:223 django_celery_beat/models.py:224 msgid "clocked" msgstr "время" -#: django_celery_beat/models.py:232 +#: django_celery_beat/models.py:264 msgid "Minute(s)" msgstr "Минуты" -#: django_celery_beat/models.py:234 +#: django_celery_beat/models.py:266 msgid "Cron Minutes to Run. Use \"*\" for \"all\". (Example: \"0,30\")" msgstr "Cron минуты. Используйте \"*\" для \"каждую\". (Например: \"0,30\")" -#: django_celery_beat/models.py:239 +#: django_celery_beat/models.py:271 msgid "Hour(s)" msgstr "Часы" -#: django_celery_beat/models.py:241 +#: django_celery_beat/models.py:273 msgid "Cron Hours to Run. Use \"*\" for \"all\". (Example: \"8,20\")" msgstr "Cron часы. Используйте \"*\" для \"каждый\". (Например: \"8,20\")" -#: django_celery_beat/models.py:246 +#: django_celery_beat/models.py:278 msgid "Day(s) Of The Week" msgstr "Дни недели" -#: django_celery_beat/models.py:248 -msgid "Cron Days Of The Week to Run. Use \"*\" for \"all\". (Example: \"0,5\")" +#: django_celery_beat/models.py:280 +#, fuzzy +#| msgid "" +#| "Cron Days Of The Week to Run. Use \"*\" for \"all\". (Example: \"0,5\")" +msgid "" +"Cron Days Of The Week to Run. Use \"*\" for \"all\", Sunday is 0 or 7, " +"Monday is 1. (Example: \"0,5\")" msgstr "Cron дни недели. Используйте \"*\" для \"каждый\". (Например: \"0,5\")" -#: django_celery_beat/models.py:254 +#: django_celery_beat/models.py:286 msgid "Day(s) Of The Month" msgstr "Дни" -#: django_celery_beat/models.py:256 -msgid "Cron Days Of The Month to Run. Use \"*\" for \"all\". (Example: \"1,15\")" +#: django_celery_beat/models.py:288 +msgid "" +"Cron Days Of The Month to Run. Use \"*\" for \"all\". (Example: \"1,15\")" msgstr "Cron дни. Используйте \"*\" для \"каждый\". (Например: \"1,15\")" -#: django_celery_beat/models.py:262 +#: django_celery_beat/models.py:294 msgid "Month(s) Of The Year" msgstr "Месяцы" -#: django_celery_beat/models.py:264 -msgid "Cron Months Of The Year to Run. Use \"*\" for \"all\". (Example: \"0,6\")" +#: django_celery_beat/models.py:296 +#, fuzzy +#| msgid "" +#| "Cron Months Of The Year to Run. Use \"*\" for \"all\". (Example: \"0,6\")" +msgid "" +"Cron Months (1-12) Of The Year to Run. Use \"*\" for \"all\". (Example: " +"\"1,12\")" msgstr "Cron месяцы. Используйте \"*\" для \"каждый\". (Например: \"0,6\")" -#: django_celery_beat/models.py:271 +#: django_celery_beat/models.py:304 msgid "Cron Timezone" msgstr "Временная зона для Cron" -#: django_celery_beat/models.py:273 +#: django_celery_beat/models.py:306 msgid "Timezone to Run the Cron Schedule on. Default is UTC." msgstr "Временная зона для Cron расписания. UTC по умолчанию." -#: django_celery_beat/models.py:279 +#: django_celery_beat/models.py:312 msgid "crontab" msgstr "crontab" -#: django_celery_beat/models.py:280 +#: django_celery_beat/models.py:313 msgid "crontabs" msgstr "crontab" -#: django_celery_beat/models.py:366 +#: django_celery_beat/models.py:404 msgid "Name" msgstr "Название" -#: django_celery_beat/models.py:367 +#: django_celery_beat/models.py:405 msgid "Short Description For This Task" msgstr "Краткое описание для этой задачи" -#: django_celery_beat/models.py:372 +#: django_celery_beat/models.py:410 msgid "" -"The Name of the Celery Task that Should be Run. (Example: \"proj.tasks.import_contacts" -"\")" -msgstr "Имя запускаемой Celery задачи. (Например: \"proj.tasks.import_contacts\")" +"The Name of the Celery Task that Should be Run. (Example: \"proj.tasks." +"import_contacts\")" +msgstr "" +"Имя запускаемой Celery задачи. (Например: \"proj.tasks.import_contacts\")" -#: django_celery_beat/models.py:380 +#: django_celery_beat/models.py:418 msgid "Interval Schedule" msgstr "Интервал" -#: django_celery_beat/models.py:381 +#: django_celery_beat/models.py:419 msgid "" -"Interval Schedule to run the task on. Set only one schedule type, leave the others null." +"Interval Schedule to run the task on. Set only one schedule type, leave the " +"others null." msgstr "" -"Интервальное расписание для запуска задачи. Выберите только один тип расписания, " -"остальные оставьте пустыми." +"Интервальное расписание для запуска задачи. Выберите только один тип " +"расписания, остальные оставьте пустыми." -#: django_celery_beat/models.py:386 +#: django_celery_beat/models.py:424 msgid "Crontab Schedule" msgstr "Crontab" -#: django_celery_beat/models.py:387 +#: django_celery_beat/models.py:425 msgid "" -"Crontab Schedule to run the task on. Set only one schedule type, leave the others null." +"Crontab Schedule to run the task on. Set only one schedule type, leave the " +"others null." msgstr "" -"Crontab расписание для запуска задачи. Выберите только один тип расписания, остальные " -"оставьте пустыми." +"Crontab расписание для запуска задачи. Выберите только один тип расписания, " +"остальные оставьте пустыми." -#: django_celery_beat/models.py:392 +#: django_celery_beat/models.py:430 msgid "Solar Schedule" msgstr "Астрономическое" -#: django_celery_beat/models.py:393 +#: django_celery_beat/models.py:431 msgid "" -"Solar Schedule to run the task on. Set only one schedule type, leave the others null." +"Solar Schedule to run the task on. Set only one schedule type, leave the " +"others null." msgstr "" -"Астрономическое расписание для запуска задачи. Выберите только один тип расписания, " -"остальные оставьте пустыми." +"Астрономическое расписание для запуска задачи. Выберите только один тип " +"расписания, остальные оставьте пустыми." -#: django_celery_beat/models.py:398 +#: django_celery_beat/models.py:436 msgid "Clocked Schedule" msgstr "Хронометрическое" -#: django_celery_beat/models.py:399 +#: django_celery_beat/models.py:437 msgid "" -"Clocked Schedule to run the task on. Set only one schedule type, leave the others null." +"Clocked Schedule to run the task on. Set only one schedule type, leave the " +"others null." msgstr "" -"Хронометрическое расписание для запуска задачи. Выберите только один тип расписания, " -"остальные оставьте пустыми." +"Хронометрическое расписание для запуска задачи. Выберите только один тип " +"расписания, остальные оставьте пустыми." -#: django_celery_beat/models.py:405 +#: django_celery_beat/models.py:443 msgid "Positional Arguments" msgstr "Позиционные аргументы" -#: django_celery_beat/models.py:407 +#: django_celery_beat/models.py:445 msgid "JSON encoded positional arguments (Example: [\"arg1\", \"arg2\"])" -msgstr "Закодированные в JSON позиционные аргументы (Например: [\"arg1\", \"arg2\"])" +msgstr "" +"Закодированные в JSON позиционные аргументы (Например: [\"arg1\", \"arg2\"])" -#: django_celery_beat/models.py:412 +#: django_celery_beat/models.py:450 msgid "Keyword Arguments" msgstr "Именованные аргументы" -#: django_celery_beat/models.py:414 +#: django_celery_beat/models.py:452 msgid "JSON encoded keyword arguments (Example: {\"argument\": \"value\"})" -msgstr "Закодированные в JSON именованные аргументы (Например: {\"argument\": \"value\"})" +msgstr "" +"Закодированные в JSON именованные аргументы (Например: {\"argument\": " +"\"value\"})" -#: django_celery_beat/models.py:420 +#: django_celery_beat/models.py:458 msgid "Queue Override" msgstr "Переопределение очереди" -#: django_celery_beat/models.py:422 +#: django_celery_beat/models.py:460 msgid "Queue defined in CELERY_TASK_QUEUES. Leave None for default queuing." -msgstr "Очередь задана в CELERY_TASK_QUEUES. Оставьте None для стандартного распределения." +msgstr "" +"Очередь задана в CELERY_TASK_QUEUES. Оставьте None для стандартного " +"распределения." -#: django_celery_beat/models.py:431 +#: django_celery_beat/models.py:469 msgid "Exchange" msgstr "Exchange" -#: django_celery_beat/models.py:432 +#: django_celery_beat/models.py:470 msgid "Override Exchange for low-level AMQP routing" msgstr "Override Exchange for low-level AMQP routing" -#: django_celery_beat/models.py:436 +#: django_celery_beat/models.py:474 msgid "Routing Key" msgstr "Ключ маршрутизации" -#: django_celery_beat/models.py:437 +#: django_celery_beat/models.py:475 msgid "Override Routing Key for low-level AMQP routing" msgstr "Override Routing Key for low-level AMQP routing" -#: django_celery_beat/models.py:441 +#: django_celery_beat/models.py:479 msgid "AMQP Message Headers" msgstr "Заголовки сообщения AMQP" -#: django_celery_beat/models.py:442 +#: django_celery_beat/models.py:480 msgid "JSON encoded message headers for the AMQP message." msgstr "Закодированные в JSON заголовки для AMQP сообщения." -#: django_celery_beat/models.py:448 +#: django_celery_beat/models.py:486 msgid "Priority" msgstr "Приоритет" -#: django_celery_beat/models.py:450 +#: django_celery_beat/models.py:488 msgid "" -"Priority Number between 0 and 255. Supported by: RabbitMQ, Redis (priority reversed, 0 " -"is highest)." +"Priority Number between 0 and 255. Supported by: RabbitMQ, Redis (priority " +"reversed, 0 is highest)." msgstr "" -"Число между 0 и 255. Поддерживается в: RabbitMQ, Redis (приоритет по убыванию, 0 " -"наивысший)." +"Число между 0 и 255. Поддерживается в: RabbitMQ, Redis (приоритет по " +"убыванию, 0 наивысший)." -#: django_celery_beat/models.py:455 +#: django_celery_beat/models.py:493 msgid "Expires Datetime" msgstr "Истекает" -#: django_celery_beat/models.py:457 -msgid "Datetime after which the schedule will no longer trigger the task to run" +#: django_celery_beat/models.py:495 +msgid "" +"Datetime after which the schedule will no longer trigger the task to run" msgstr "Время, после которого расписание больше не будет запускать задачу" -#: django_celery_beat/models.py:462 +#: django_celery_beat/models.py:500 +msgid "Expires timedelta with seconds" +msgstr "" + +#: django_celery_beat/models.py:502 +#, fuzzy +#| msgid "" +#| "Datetime after which the schedule will no longer trigger the task to run" +msgid "" +"Timedelta with seconds which the schedule will no longer trigger the task to " +"run" +msgstr "Время, после которого расписание больше не будет запускать задачу" + +#: django_celery_beat/models.py:508 msgid "One-off Task" msgstr "Одноразовая задача" -#: django_celery_beat/models.py:464 +#: django_celery_beat/models.py:510 msgid "If True, the schedule will only run the task a single time" msgstr "Если включено, то задача будет запущена только один раз" -#: django_celery_beat/models.py:468 +#: django_celery_beat/models.py:514 msgid "Start Datetime" msgstr "Время начала" -#: django_celery_beat/models.py:470 +#: django_celery_beat/models.py:516 msgid "Datetime when the schedule should begin triggering the task to run" msgstr "Время начала вызовов задачи расписанием" -#: django_celery_beat/models.py:481 +#: django_celery_beat/models.py:521 +msgid "Enabled" +msgstr "Активна" + +#: django_celery_beat/models.py:522 +msgid "Set to False to disable the schedule" +msgstr "Выключите для отключения расписания" + +#: django_celery_beat/models.py:527 msgid "Last Run Datetime" msgstr "Последний запуск" -#: django_celery_beat/models.py:483 +#: django_celery_beat/models.py:529 msgid "" -"Datetime that the schedule last triggered the task to run. Reset to None if enabled is " -"set to False." +"Datetime that the schedule last triggered the task to run. Reset to None if " +"enabled is set to False." msgstr "Время последнего вызова задачи. None если задача выключена." -#: django_celery_beat/models.py:488 +#: django_celery_beat/models.py:534 msgid "Total Run Count" msgstr "Запусков всего" -#: django_celery_beat/models.py:490 +#: django_celery_beat/models.py:536 msgid "Running count of how many times the schedule has triggered the task" msgstr "Количество запусков задачи этим расписанием" -#: django_celery_beat/models.py:495 +#: django_celery_beat/models.py:541 msgid "Last Modified" msgstr "Последнее изменение" -#: django_celery_beat/models.py:496 +#: django_celery_beat/models.py:542 msgid "Datetime that this PeriodicTask was last modified" msgstr "Время последнего изменения этой задачи" -#: django_celery_beat/models.py:500 +#: django_celery_beat/models.py:546 msgid "Description" msgstr "Описание" -#: django_celery_beat/models.py:502 +#: django_celery_beat/models.py:548 msgid "Detailed description about the details of this Periodic Task" msgstr "Подробное описание того, что делает эта задача" -#: django_celery_beat/models.py:511 +#: django_celery_beat/models.py:557 msgid "periodic task" msgstr "периодическая задача" -#: django_celery_beat/models.py:512 +#: django_celery_beat/models.py:558 msgid "periodic tasks" msgstr "периодические задачи" + +#: django_celery_beat/templates/admin/djcelery/change_list.html:6 +msgid "Home" +msgstr "" diff --git a/django_celery_beat/locale/zh_Hans/LC_MESSAGES/django.mo b/django_celery_beat/locale/zh_Hans/LC_MESSAGES/django.mo index 7fd2939a..2a9b57bb 100644 Binary files a/django_celery_beat/locale/zh_Hans/LC_MESSAGES/django.mo and b/django_celery_beat/locale/zh_Hans/LC_MESSAGES/django.mo differ diff --git a/django_celery_beat/locale/zh_Hans/LC_MESSAGES/django.po b/django_celery_beat/locale/zh_Hans/LC_MESSAGES/django.po index 8c2f73c0..8891af69 100644 --- a/django_celery_beat/locale/zh_Hans/LC_MESSAGES/django.po +++ b/django_celery_beat/locale/zh_Hans/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-02-19 00:36+0800\n" +"POT-Creation-Date: 2022-12-22 19:03+0000\n" "PO-Revision-Date: 2022-10-14 23:48+0200\n" "Last-Translator: Rainshaw \n" "Language-Team: x_zhuo \n" @@ -17,470 +17,500 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: .\django_celery_beat\admin.py:64 +#: django_celery_beat/admin.py:60 msgid "Task (registered)" msgstr "任务 (已注册的)" -#: .\django_celery_beat\admin.py:68 +#: django_celery_beat/admin.py:64 msgid "Task (custom)" msgstr "任务 (自定义)" -#: .\django_celery_beat\admin.py:85 +#: django_celery_beat/admin.py:81 msgid "Need name of task" msgstr "任务需要一个名称" -#: .\django_celery_beat\admin.py:91 .\django_celery_beat\models.py:589 +#: django_celery_beat/admin.py:87 django_celery_beat/models.py:605 msgid "Only one can be set, in expires and expire_seconds" msgstr "不可以同时设置 expires 和 expire_seconds 字段" -#: .\django_celery_beat\admin.py:101 +#: django_celery_beat/admin.py:97 #, python-format msgid "Unable to parse JSON: %s" msgstr "无法解析 JSON: %s" -#: .\django_celery_beat\admin.py:167 +#: django_celery_beat/admin.py:125 +#, fuzzy +#| msgid "Solar Schedule" +msgid "Schedule" +msgstr "日程时间表" + +#: django_celery_beat/admin.py:130 +#, fuzzy +#| msgid "Keyword Arguments" +msgid "Arguments" +msgstr "关键字参数" + +#: django_celery_beat/admin.py:134 +msgid "Execution Options" +msgstr "" + +#: django_celery_beat/admin.py:177 #, python-brace-format msgid "{0} task{1} {2} successfully {3}" msgstr "{0} 任务{1} {2} 成功 {3}" -#: .\django_celery_beat\admin.py:170 .\django_celery_beat\admin.py:232 +#: django_celery_beat/admin.py:180 django_celery_beat/admin.py:247 msgid "was,were" msgstr "将" -#: .\django_celery_beat\admin.py:179 +#: django_celery_beat/admin.py:189 msgid "Enable selected tasks" msgstr "启用选中的任务" -#: .\django_celery_beat\admin.py:185 +#: django_celery_beat/admin.py:195 msgid "Disable selected tasks" msgstr "禁用选中的任务" -#: .\django_celery_beat\admin.py:197 +#: django_celery_beat/admin.py:207 msgid "Toggle activity of selected tasks" msgstr "切换选中的任务" -#: .\django_celery_beat\admin.py:217 -#, python-brace-format -msgid "task \"{0}\" not found" +#: django_celery_beat/admin.py:228 +#, fuzzy, python-brace-format +#| msgid "task \"{0}\" not found" +msgid "task \"{not_found_task_name}\" not found" msgstr "未找到\"{0}\"任务" -#: .\django_celery_beat\admin.py:229 +#: django_celery_beat/admin.py:244 #, python-brace-format msgid "{0} task{1} {2} successfully run" msgstr "{0} 任务{1} {2} 启动成功" -#: .\django_celery_beat\admin.py:235 +#: django_celery_beat/admin.py:250 msgid "Run selected tasks" msgstr "运行选中的任务" -#: .\django_celery_beat\apps.py:13 +#: django_celery_beat/apps.py:13 msgid "Periodic Tasks" msgstr "周期任务" -#: .\django_celery_beat\models.py:26 +#: django_celery_beat/models.py:30 msgid "Days" msgstr "天" -#: .\django_celery_beat\models.py:27 +#: django_celery_beat/models.py:31 msgid "Hours" msgstr "小时" -#: .\django_celery_beat\models.py:28 +#: django_celery_beat/models.py:32 msgid "Minutes" msgstr "分钟" -#: .\django_celery_beat\models.py:29 +#: django_celery_beat/models.py:33 msgid "Seconds" msgstr "秒" -#: .\django_celery_beat\models.py:30 +#: django_celery_beat/models.py:34 msgid "Microseconds" msgstr "毫秒" -#: .\django_celery_beat\models.py:34 +#: django_celery_beat/models.py:38 msgid "Day" msgstr "天" -#: .\django_celery_beat\models.py:35 +#: django_celery_beat/models.py:39 msgid "Hour" msgstr "小时" -#: .\django_celery_beat\models.py:36 +#: django_celery_beat/models.py:40 msgid "Minute" msgstr "分钟" -#: .\django_celery_beat\models.py:37 +#: django_celery_beat/models.py:41 msgid "Second" msgstr "秒" -#: .\django_celery_beat\models.py:38 +#: django_celery_beat/models.py:42 msgid "Microsecond" msgstr "毫秒" -#: .\django_celery_beat\models.py:42 +#: django_celery_beat/models.py:46 msgid "Astronomical dawn" msgstr "天文黎明" -#: .\django_celery_beat\models.py:43 +#: django_celery_beat/models.py:47 msgid "Civil dawn" msgstr "民事黎明" -#: .\django_celery_beat\models.py:44 +#: django_celery_beat/models.py:48 msgid "Nautical dawn" msgstr "航海黎明" -#: .\django_celery_beat\models.py:45 +#: django_celery_beat/models.py:49 msgid "Astronomical dusk" msgstr "天文黄昏" -#: .\django_celery_beat\models.py:46 +#: django_celery_beat/models.py:50 msgid "Civil dusk" msgstr "民事黄昏" -#: .\django_celery_beat\models.py:47 +#: django_celery_beat/models.py:51 msgid "Nautical dusk" msgstr "航海黄昏" -#: .\django_celery_beat\models.py:48 +#: django_celery_beat/models.py:52 msgid "Solar noon" msgstr "正午" -#: .\django_celery_beat\models.py:49 +#: django_celery_beat/models.py:53 msgid "Sunrise" msgstr "日出" -#: .\django_celery_beat\models.py:50 +#: django_celery_beat/models.py:54 msgid "Sunset" msgstr "日落" -#: .\django_celery_beat\models.py:84 +#: django_celery_beat/models.py:88 msgid "Solar Event" msgstr "日程事件" -#: .\django_celery_beat\models.py:85 +#: django_celery_beat/models.py:89 msgid "The type of solar event when the job should run" msgstr "当任务应该执行时的日程事件类型" -#: .\django_celery_beat\models.py:89 +#: django_celery_beat/models.py:93 msgid "Latitude" msgstr "纬度" -#: .\django_celery_beat\models.py:90 +#: django_celery_beat/models.py:94 msgid "Run the task when the event happens at this latitude" msgstr "当在此纬度发生事件时执行任务" -#: .\django_celery_beat\models.py:95 +#: django_celery_beat/models.py:99 msgid "Longitude" msgstr "经度" -#: .\django_celery_beat\models.py:96 +#: django_celery_beat/models.py:100 msgid "Run the task when the event happens at this longitude" msgstr "当在此经度发生事件时执行任务" -#: .\django_celery_beat\models.py:103 +#: django_celery_beat/models.py:107 msgid "solar event" msgstr "日程事件" -#: .\django_celery_beat\models.py:104 +#: django_celery_beat/models.py:108 msgid "solar events" msgstr "日程事件" -#: .\django_celery_beat\models.py:153 +#: django_celery_beat/models.py:158 msgid "Number of Periods" msgstr "周期数" -#: .\django_celery_beat\models.py:154 +#: django_celery_beat/models.py:159 msgid "Number of interval periods to wait before running the task again" msgstr "再次执行任务之前要等待的间隔周期数" -#: .\django_celery_beat\models.py:160 +#: django_celery_beat/models.py:165 msgid "Interval Period" msgstr "间隔周期" -#: .\django_celery_beat\models.py:161 +#: django_celery_beat/models.py:166 msgid "The type of period between task runs (Example: days)" msgstr "任务每次执行之间的时间间隔类型(例如:天)" -#: .\django_celery_beat\models.py:167 +#: django_celery_beat/models.py:172 msgid "interval" msgstr "间隔" -#: .\django_celery_beat\models.py:168 +#: django_celery_beat/models.py:173 msgid "intervals" msgstr "间隔" -#: .\django_celery_beat\models.py:196 +#: django_celery_beat/models.py:200 msgid "every {}" msgstr "每 {}" -#: .\django_celery_beat\models.py:201 +#: django_celery_beat/models.py:205 msgid "every {} {}" msgstr "每 {} {}" -#: .\django_celery_beat\models.py:212 +#: django_celery_beat/models.py:216 msgid "Clock Time" msgstr "定时时间" -#: .\django_celery_beat\models.py:213 +#: django_celery_beat/models.py:217 msgid "Run the task at clocked time" msgstr "在定时时间执行任务" -#: .\django_celery_beat\models.py:219 .\django_celery_beat\models.py:220 +#: django_celery_beat/models.py:223 django_celery_beat/models.py:224 msgid "clocked" msgstr "定时" -#: .\django_celery_beat\models.py:260 +#: django_celery_beat/models.py:264 msgid "Minute(s)" msgstr "分钟" -#: .\django_celery_beat\models.py:262 +#: django_celery_beat/models.py:266 msgid "Cron Minutes to Run. Use \"*\" for \"all\". (Example: \"0,30\")" msgstr "计划执行的分钟。 将\"*\"用作\"all\"。(例如:\"0,30\")" -#: .\django_celery_beat\models.py:267 +#: django_celery_beat/models.py:271 msgid "Hour(s)" msgstr "小时" -#: .\django_celery_beat\models.py:269 +#: django_celery_beat/models.py:273 msgid "Cron Hours to Run. Use \"*\" for \"all\". (Example: \"8,20\")" msgstr "计划执行的小时。 将\"*\"用作\"all\"。(例如:\"8,20\")" -#: .\django_celery_beat\models.py:274 +#: django_celery_beat/models.py:278 msgid "Day(s) Of The Week" msgstr "一个星期的第几天" -#: .\django_celery_beat\models.py:276 -msgid "Cron Days Of The Week to Run. Use \"*\" for \"all\". (Example: \"0,5\")" +#: django_celery_beat/models.py:280 +#, fuzzy +#| msgid "" +#| "Cron Days Of The Week to Run. Use \"*\" for \"all\". (Example: \"0,5\")" +msgid "" +"Cron Days Of The Week to Run. Use \"*\" for \"all\", Sunday is 0 or 7, " +"Monday is 1. (Example: \"0,5\")" msgstr "计划执行的每周的第几天。将\"*\"用作\"all\"。(例如:\"0,5\")" -#: .\django_celery_beat\models.py:282 +#: django_celery_beat/models.py:286 msgid "Day(s) Of The Month" msgstr "一个月的第几天" -#: .\django_celery_beat\models.py:284 +#: django_celery_beat/models.py:288 msgid "" "Cron Days Of The Month to Run. Use \"*\" for \"all\". (Example: \"1,15\")" msgstr "计划执行的每个月的第几天。将\"*\"用作\"all\"。(例如:\"0,5\")" -#: .\django_celery_beat\models.py:290 +#: django_celery_beat/models.py:294 msgid "Month(s) Of The Year" msgstr "一年的第几个月" -#: .\django_celery_beat\models.py:292 +#: django_celery_beat/models.py:296 +#, fuzzy +#| msgid "" +#| "Cron Months Of The Year to Run. Use \"*\" for \"all\". (Example: \"0,6\")" msgid "" -"Cron Months Of The Year to Run. Use \"*\" for \"all\". (Example: \"0,6\")" +"Cron Months (1-12) Of The Year to Run. Use \"*\" for \"all\". (Example: " +"\"1,12\")" msgstr "计划执行的每一年的第几个月。将\"*\"用作\"all\"。(例如:\"0,5\")" -#: .\django_celery_beat\models.py:299 +#: django_celery_beat/models.py:304 msgid "Cron Timezone" msgstr "计划任务的时区" -#: .\django_celery_beat\models.py:301 +#: django_celery_beat/models.py:306 msgid "Timezone to Run the Cron Schedule on. Default is UTC." msgstr "执行计划任务表的时区。 默认为UTC。" -#: .\django_celery_beat\models.py:307 +#: django_celery_beat/models.py:312 msgid "crontab" msgstr "计划任务" -#: .\django_celery_beat\models.py:308 +#: django_celery_beat/models.py:313 msgid "crontabs" msgstr "计划任务" -#: .\django_celery_beat\models.py:393 +#: django_celery_beat/models.py:404 msgid "Name" msgstr "任务名" -#: .\django_celery_beat\models.py:394 +#: django_celery_beat/models.py:405 msgid "Short Description For This Task" msgstr "该任务的简短说明" -#: .\django_celery_beat\models.py:399 +#: django_celery_beat/models.py:410 msgid "" "The Name of the Celery Task that Should be Run. (Example: \"proj.tasks." "import_contacts\")" msgstr "被执行的任务的名称。(例如:\"proj.tasks.import_contacts\")" -#: .\django_celery_beat\models.py:407 +#: django_celery_beat/models.py:418 msgid "Interval Schedule" msgstr "间隔时间表" -#: .\django_celery_beat\models.py:408 +#: django_celery_beat/models.py:419 msgid "" "Interval Schedule to run the task on. Set only one schedule type, leave the " "others null." msgstr "执行任务的间隔时间表。 仅设置一种时间表类型,将其他保留为空。" -#: .\django_celery_beat\models.py:413 +#: django_celery_beat/models.py:424 msgid "Crontab Schedule" msgstr "计划时间表" -#: .\django_celery_beat\models.py:414 +#: django_celery_beat/models.py:425 msgid "" "Crontab Schedule to run the task on. Set only one schedule type, leave the " "others null." msgstr "执行任务的计划时间表。 仅设置一种时间表类型,将其他保留为空。" -#: .\django_celery_beat\models.py:419 +#: django_celery_beat/models.py:430 msgid "Solar Schedule" msgstr "日程时间表" -#: .\django_celery_beat\models.py:420 +#: django_celery_beat/models.py:431 msgid "" "Solar Schedule to run the task on. Set only one schedule type, leave the " "others null." msgstr "执行任务的日程时间表。 仅设置一种时间表类型,将其他保留为空。" -#: .\django_celery_beat\models.py:425 +#: django_celery_beat/models.py:436 msgid "Clocked Schedule" msgstr "定时时间表" -#: .\django_celery_beat\models.py:426 +#: django_celery_beat/models.py:437 msgid "" "Clocked Schedule to run the task on. Set only one schedule type, leave the " "others null." msgstr "执行任务的定时时间表。 仅设置一种时间表类型,将其他保留为空。" -#: .\django_celery_beat\models.py:432 +#: django_celery_beat/models.py:443 msgid "Positional Arguments" msgstr "位置参数" -#: .\django_celery_beat\models.py:434 +#: django_celery_beat/models.py:445 msgid "JSON encoded positional arguments (Example: [\"arg1\", \"arg2\"])" msgstr "JSON编码的位置参数(例如: [\"arg1\", \"arg2\"])" -#: .\django_celery_beat\models.py:439 +#: django_celery_beat/models.py:450 msgid "Keyword Arguments" msgstr "关键字参数" -#: .\django_celery_beat\models.py:441 +#: django_celery_beat/models.py:452 msgid "JSON encoded keyword arguments (Example: {\"argument\": \"value\"})" msgstr "JSON编码的关键字参数(例如: {\"argument\": \"value\"})" -#: .\django_celery_beat\models.py:447 +#: django_celery_beat/models.py:458 msgid "Queue Override" msgstr "队列覆盖" -#: .\django_celery_beat\models.py:449 +#: django_celery_beat/models.py:460 msgid "Queue defined in CELERY_TASK_QUEUES. Leave None for default queuing." msgstr "在 CELERY_TASK_QUEUES 定义的队列。保留空以进行默认排队。" -#: .\django_celery_beat\models.py:458 +#: django_celery_beat/models.py:469 msgid "Exchange" msgstr "交换机" -#: .\django_celery_beat\models.py:459 +#: django_celery_beat/models.py:470 msgid "Override Exchange for low-level AMQP routing" msgstr "覆盖交换机以进行低层级AMQP路由" -#: .\django_celery_beat\models.py:463 +#: django_celery_beat/models.py:474 msgid "Routing Key" msgstr "路由键" -#: .\django_celery_beat\models.py:464 +#: django_celery_beat/models.py:475 msgid "Override Routing Key for low-level AMQP routing" msgstr "覆盖路由键以进行低层级AMQP路由" -#: .\django_celery_beat\models.py:468 +#: django_celery_beat/models.py:479 msgid "AMQP Message Headers" msgstr "AMQP消息头" -#: .\django_celery_beat\models.py:469 +#: django_celery_beat/models.py:480 msgid "JSON encoded message headers for the AMQP message." msgstr "AMQP消息的JSON编码消息头。" -#: .\django_celery_beat\models.py:475 +#: django_celery_beat/models.py:486 msgid "Priority" msgstr "优先级" -#: .\django_celery_beat\models.py:477 +#: django_celery_beat/models.py:488 msgid "" "Priority Number between 0 and 255. Supported by: RabbitMQ, Redis (priority " "reversed, 0 is highest)." msgstr "" "优先级数字,介于0和255之间。支持者:RabbitMQ,Redis(优先级颠倒,0是最高)。" -#: .\django_celery_beat\models.py:482 +#: django_celery_beat/models.py:493 msgid "Expires Datetime" msgstr "过期时刻" -#: .\django_celery_beat\models.py:484 +#: django_celery_beat/models.py:495 msgid "" "Datetime after which the schedule will no longer trigger the task to run" msgstr "过期时刻,计划表将在此时刻后不再触发任务执行" -#: .\django_celery_beat\models.py:489 +#: django_celery_beat/models.py:500 msgid "Expires timedelta with seconds" msgstr "过期时间间隔,以秒为单位" -#: .\django_celery_beat\models.py:491 +#: django_celery_beat/models.py:502 msgid "" "Timedelta with seconds which the schedule will no longer trigger the task to " "run" msgstr "再过该秒后,不再触发任务执行" -#: .\django_celery_beat\models.py:497 +#: django_celery_beat/models.py:508 msgid "One-off Task" msgstr "一次任务" -#: .\django_celery_beat\models.py:499 +#: django_celery_beat/models.py:510 msgid "If True, the schedule will only run the task a single time" msgstr "如果为True,则计划将仅运行任务一次" -#: .\django_celery_beat\models.py:503 +#: django_celery_beat/models.py:514 msgid "Start Datetime" msgstr "开始时间" -#: .\django_celery_beat\models.py:505 +#: django_celery_beat/models.py:516 msgid "Datetime when the schedule should begin triggering the task to run" msgstr "时间表开始触发任务执行的时刻" -#: .\django_celery_beat\models.py:510 +#: django_celery_beat/models.py:521 msgid "Enabled" msgstr "已启用" -#: .\django_celery_beat\models.py:511 +#: django_celery_beat/models.py:522 msgid "Set to False to disable the schedule" msgstr "设置为False可禁用时间表" -#: .\django_celery_beat\models.py:516 +#: django_celery_beat/models.py:527 msgid "Last Run Datetime" msgstr "上次运行时刻" -#: .\django_celery_beat\models.py:518 +#: django_celery_beat/models.py:529 msgid "" "Datetime that the schedule last triggered the task to run. Reset to None if " "enabled is set to False." msgstr "最后一次触发任务执行的时刻。 如果enabled设置为False,则重置为None。" -#: .\django_celery_beat\models.py:523 +#: django_celery_beat/models.py:534 msgid "Total Run Count" msgstr "总运行次数" -#: .\django_celery_beat\models.py:525 +#: django_celery_beat/models.py:536 msgid "Running count of how many times the schedule has triggered the task" msgstr "任务执行多少次的运行计数" -#: .\django_celery_beat\models.py:530 +#: django_celery_beat/models.py:541 msgid "Last Modified" msgstr "最后修改" -#: .\django_celery_beat\models.py:531 +#: django_celery_beat/models.py:542 msgid "Datetime that this PeriodicTask was last modified" msgstr "该周期性任务的最后修改时刻" -#: .\django_celery_beat\models.py:535 +#: django_celery_beat/models.py:546 msgid "Description" msgstr "描述" -#: .\django_celery_beat\models.py:537 +#: django_celery_beat/models.py:548 msgid "Detailed description about the details of this Periodic Task" msgstr "有关此周期性任务的详细信息" -#: .\django_celery_beat\models.py:546 +#: django_celery_beat/models.py:557 msgid "periodic task" msgstr "周期性任务" -#: .\django_celery_beat\models.py:547 +#: django_celery_beat/models.py:558 msgid "periodic tasks" msgstr "周期性任务" + +#: django_celery_beat/templates/admin/djcelery/change_list.html:6 +msgid "Home" +msgstr "" diff --git a/django_celery_beat/migrations/0018_improve_crontab_helptext.py b/django_celery_beat/migrations/0018_improve_crontab_helptext.py new file mode 100644 index 00000000..79a88607 --- /dev/null +++ b/django_celery_beat/migrations/0018_improve_crontab_helptext.py @@ -0,0 +1,19 @@ +# Generated by Django 3.2.16 on 2022-12-23 22:30 + +from django.db import migrations, models +import django_celery_beat.validators + + +class Migration(migrations.Migration): + + dependencies = [ + ('django_celery_beat', '0017_alter_crontabschedule_month_of_year'), + ] + + operations = [ + migrations.AlterField( + model_name='crontabschedule', + name='day_of_week', + field=models.CharField(default='*', help_text='Cron Days Of The Week to Run. Use "*" for "all", Sunday is 0 or 7, Monday is 1. (Example: "0,5")', max_length=64, validators=[django_celery_beat.validators.day_of_week_validator], verbose_name='Day(s) Of The Week'), + ), + ] diff --git a/django_celery_beat/models.py b/django_celery_beat/models.py index b841573b..dbfeb7fb 100644 --- a/django_celery_beat/models.py +++ b/django_celery_beat/models.py @@ -8,6 +8,7 @@ import timezone_field from celery import current_app, schedules +from cron_descriptor import get_description from django.conf import settings from django.core.exceptions import MultipleObjectsReturned, ValidationError from django.core.validators import MaxValueValidator, MinValueValidator @@ -276,8 +277,8 @@ class CrontabSchedule(models.Model): max_length=64, default='*', verbose_name=_('Day(s) Of The Week'), help_text=_( - 'Cron Days Of The Week to Run. Use "*" for "all". ' - '(Example: "0,5")'), + 'Cron Days Of The Week to Run. Use "*" for "all", Sunday ' + 'is 0 or 7, Monday is 1. (Example: "0,5")'), validators=[validators.day_of_week_validator], ) day_of_month = models.CharField( @@ -313,6 +314,15 @@ class Meta: ordering = ['month_of_year', 'day_of_month', 'day_of_week', 'hour', 'minute', 'timezone'] + @property + def human_readable(self): + human_readable = get_description('{} {} {} {} {}'.format( + cronexp(self.minute), cronexp(self.hour), + cronexp(self.day_of_month), cronexp(self.month_of_year), + cronexp(self.day_of_week) + )) + return f'{human_readable} {str(self.timezone)}' + def __str__(self): return '{} {} {} {} {} (m/h/dM/MY/d) {}'.format( cronexp(self.minute), cronexp(self.hour), diff --git a/django_celery_beat/templates/admin/djcelery/change_periodictask_form.html b/django_celery_beat/templates/admin/djcelery/change_periodictask_form.html new file mode 100644 index 00000000..76d2343f --- /dev/null +++ b/django_celery_beat/templates/admin/djcelery/change_periodictask_form.html @@ -0,0 +1,22 @@ +{% extends 'admin/change_form.html' %} + +{% block admin_change_form_document_ready %} + {{ block.super }} + + {{ readable_crontabs|json_script:"readable-crontabs" }} + +{% endblock %} diff --git a/requirements/default.txt b/requirements/default.txt index 3374e923..03c129a9 100644 --- a/requirements/default.txt +++ b/requirements/default.txt @@ -4,3 +4,4 @@ django-timezone-field>=5.0 backports.zoneinfo; python_version<"3.9" tzdata python-crontab>=2.3.4 +cron-descriptor>=1.2.32