diff --git a/netbox/translations/zh/LC_MESSAGES/django.po b/netbox/translations/zh/LC_MESSAGES/django.po
index 51a0988dd..0a4abc541 100644
--- a/netbox/translations/zh/LC_MESSAGES/django.po
+++ b/netbox/translations/zh/LC_MESSAGES/django.po
@@ -6,14 +6,14 @@
# Translators:
# Jeremy Stretch, 2024
# Mitt, 2024
-# 夏小正, 2024
# RossCheung, 2024
# Daniel Wu, 2024
# JingHua Wu, 2024
# xiaohu han, 2024
-# 闻寄云, 2024
# 孔南, 2024
# Bubu, 2024
+# 夏小正, 2024
+# 闻寄云, 2024
# jiyin luo, 2024
#
#, fuzzy
@@ -21,7 +21,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-07-20 05:02+0000\n"
+"POT-Creation-Date: 2024-08-14 05:02+0000\n"
"PO-Revision-Date: 2023-10-30 17:48+0000\n"
"Last-Translator: jiyin luo, 2024\n"
"Language-Team: Chinese (https://app.transifex.com/netbox-community/teams/178115/zh/)\n"
@@ -72,14 +72,31 @@ msgstr "最后使用"
msgid "Allowed IPs"
msgstr "允许的IP"
+#: netbox/account/views.py:112
+#, python-brace-format
+msgid "Logged in as {user}."
+msgstr ""
+
+#: netbox/account/views.py:162
+msgid "You have logged out."
+msgstr ""
+
#: netbox/account/views.py:214
msgid "Your preferences have been updated."
msgstr "你的首选项已更新。"
+#: netbox/account/views.py:237
+msgid "LDAP-authenticated user credentials cannot be changed within NetBox."
+msgstr ""
+
+#: netbox/account/views.py:252
+msgid "Your password has been changed successfully."
+msgstr ""
+
#: netbox/circuits/choices.py:21 netbox/dcim/choices.py:20
#: netbox/dcim/choices.py:102 netbox/dcim/choices.py:174
-#: netbox/dcim/choices.py:220 netbox/dcim/choices.py:1459
-#: netbox/dcim/choices.py:1535 netbox/dcim/choices.py:1585
+#: netbox/dcim/choices.py:220 netbox/dcim/choices.py:1461
+#: netbox/dcim/choices.py:1537 netbox/dcim/choices.py:1587
#: netbox/virtualization/choices.py:20 netbox/virtualization/choices.py:45
#: netbox/vpn/choices.py:18
msgid "Planned"
@@ -92,7 +109,7 @@ msgstr "置备"
#: netbox/circuits/choices.py:23 netbox/core/tables/tasks.py:22
#: netbox/dcim/choices.py:22 netbox/dcim/choices.py:103
#: netbox/dcim/choices.py:173 netbox/dcim/choices.py:219
-#: netbox/dcim/choices.py:1534 netbox/dcim/choices.py:1584
+#: netbox/dcim/choices.py:1536 netbox/dcim/choices.py:1586
#: netbox/extras/tables/tables.py:392 netbox/ipam/choices.py:31
#: netbox/ipam/choices.py:49 netbox/ipam/choices.py:69
#: netbox/ipam/choices.py:154 netbox/templates/extras/configcontext.html:25
@@ -103,8 +120,8 @@ msgid "Active"
msgstr "在线"
#: netbox/circuits/choices.py:24 netbox/dcim/choices.py:172
-#: netbox/dcim/choices.py:218 netbox/dcim/choices.py:1533
-#: netbox/dcim/choices.py:1586 netbox/virtualization/choices.py:24
+#: netbox/dcim/choices.py:218 netbox/dcim/choices.py:1535
+#: netbox/dcim/choices.py:1588 netbox/virtualization/choices.py:24
#: netbox/virtualization/choices.py:43
msgid "Offline"
msgstr "离线"
@@ -190,8 +207,8 @@ msgstr "站点组(缩写)"
#: netbox/dcim/tables/power.py:26 netbox/dcim/tables/power.py:93
#: netbox/dcim/tables/racks.py:62 netbox/dcim/tables/racks.py:138
#: netbox/dcim/tables/sites.py:129 netbox/extras/filtersets.py:477
-#: netbox/ipam/forms/bulk_edit.py:216 netbox/ipam/forms/bulk_edit.py:270
-#: netbox/ipam/forms/bulk_edit.py:448 netbox/ipam/forms/bulk_edit.py:522
+#: netbox/ipam/forms/bulk_edit.py:216 netbox/ipam/forms/bulk_edit.py:283
+#: netbox/ipam/forms/bulk_edit.py:462 netbox/ipam/forms/bulk_edit.py:536
#: netbox/ipam/forms/bulk_import.py:170 netbox/ipam/forms/bulk_import.py:437
#: netbox/ipam/forms/filtersets.py:153 netbox/ipam/forms/filtersets.py:231
#: netbox/ipam/forms/filtersets.py:432 netbox/ipam/forms/filtersets.py:496
@@ -323,7 +340,7 @@ msgstr "搜索"
#: netbox/circuits/forms/filtersets.py:212
#: netbox/circuits/forms/model_forms.py:109
#: netbox/circuits/forms/model_forms.py:131
-#: netbox/circuits/tables/circuits.py:98 netbox/dcim/forms/connections.py:71
+#: netbox/circuits/tables/circuits.py:98 netbox/dcim/forms/connections.py:73
#: netbox/templates/circuits/circuit.html:15
#: netbox/templates/circuits/circuittermination.html:19
#: netbox/templates/dcim/inc/cable_termination.html:55
@@ -374,10 +391,10 @@ msgstr "自治系统编号/AS编号"
#: netbox/ipam/forms/bulk_edit.py:51 netbox/ipam/forms/bulk_edit.py:71
#: netbox/ipam/forms/bulk_edit.py:91 netbox/ipam/forms/bulk_edit.py:115
#: netbox/ipam/forms/bulk_edit.py:144 netbox/ipam/forms/bulk_edit.py:173
-#: netbox/ipam/forms/bulk_edit.py:192 netbox/ipam/forms/bulk_edit.py:261
-#: netbox/ipam/forms/bulk_edit.py:305 netbox/ipam/forms/bulk_edit.py:353
-#: netbox/ipam/forms/bulk_edit.py:396 netbox/ipam/forms/bulk_edit.py:424
-#: netbox/ipam/forms/bulk_edit.py:554 netbox/ipam/forms/bulk_edit.py:585
+#: netbox/ipam/forms/bulk_edit.py:192 netbox/ipam/forms/bulk_edit.py:274
+#: netbox/ipam/forms/bulk_edit.py:319 netbox/ipam/forms/bulk_edit.py:367
+#: netbox/ipam/forms/bulk_edit.py:410 netbox/ipam/forms/bulk_edit.py:438
+#: netbox/ipam/forms/bulk_edit.py:568 netbox/ipam/forms/bulk_edit.py:599
#: netbox/templates/account/token.html:35
#: netbox/templates/circuits/circuit.html:59
#: netbox/templates/circuits/circuittype.html:26
@@ -555,7 +572,7 @@ msgstr "颜色"
#: netbox/dcim/tables/devices.py:802 netbox/dcim/tables/power.py:77
#: netbox/extras/forms/bulk_import.py:39 netbox/extras/tables/tables.py:290
#: netbox/extras/tables/tables.py:362 netbox/extras/tables/tables.py:480
-#: netbox/netbox/tables/tables.py:239
+#: netbox/netbox/tables/tables.py:240
#: netbox/templates/circuits/circuit.html:30
#: netbox/templates/core/datasource.html:38
#: netbox/templates/dcim/cable.html:15
@@ -613,8 +630,8 @@ msgstr "运营商账户"
#: netbox/dcim/tables/devices.py:1034 netbox/dcim/tables/modules.py:69
#: netbox/dcim/tables/power.py:74 netbox/dcim/tables/racks.py:66
#: netbox/dcim/tables/sites.py:82 netbox/dcim/tables/sites.py:133
-#: netbox/ipam/forms/bulk_edit.py:241 netbox/ipam/forms/bulk_edit.py:290
-#: netbox/ipam/forms/bulk_edit.py:338 netbox/ipam/forms/bulk_edit.py:544
+#: netbox/ipam/forms/bulk_edit.py:254 netbox/ipam/forms/bulk_edit.py:304
+#: netbox/ipam/forms/bulk_edit.py:352 netbox/ipam/forms/bulk_edit.py:558
#: netbox/ipam/forms/bulk_import.py:191 netbox/ipam/forms/bulk_import.py:256
#: netbox/ipam/forms/bulk_import.py:292 netbox/ipam/forms/bulk_import.py:458
#: netbox/ipam/forms/filtersets.py:210 netbox/ipam/forms/filtersets.py:281
@@ -680,8 +697,8 @@ msgstr "状态"
#: netbox/extras/forms/filtersets.py:405 netbox/ipam/forms/bulk_edit.py:41
#: netbox/ipam/forms/bulk_edit.py:66 netbox/ipam/forms/bulk_edit.py:110
#: netbox/ipam/forms/bulk_edit.py:139 netbox/ipam/forms/bulk_edit.py:164
-#: netbox/ipam/forms/bulk_edit.py:236 netbox/ipam/forms/bulk_edit.py:285
-#: netbox/ipam/forms/bulk_edit.py:333 netbox/ipam/forms/bulk_edit.py:539
+#: netbox/ipam/forms/bulk_edit.py:249 netbox/ipam/forms/bulk_edit.py:299
+#: netbox/ipam/forms/bulk_edit.py:347 netbox/ipam/forms/bulk_edit.py:553
#: netbox/ipam/forms/bulk_import.py:37 netbox/ipam/forms/bulk_import.py:66
#: netbox/ipam/forms/bulk_import.py:94 netbox/ipam/forms/bulk_import.py:114
#: netbox/ipam/forms/bulk_import.py:134 netbox/ipam/forms/bulk_import.py:163
@@ -893,7 +910,7 @@ msgstr "运营商网络"
#: netbox/dcim/tables/devices.py:157 netbox/dcim/tables/power.py:30
#: netbox/dcim/tables/racks.py:58 netbox/dcim/tables/racks.py:143
#: netbox/extras/filtersets.py:488 netbox/extras/forms/filtersets.py:329
-#: netbox/ipam/forms/bulk_edit.py:457 netbox/ipam/forms/filtersets.py:173
+#: netbox/ipam/forms/bulk_edit.py:471 netbox/ipam/forms/filtersets.py:173
#: netbox/ipam/forms/filtersets.py:414 netbox/ipam/forms/filtersets.py:437
#: netbox/ipam/forms/filtersets.py:474 netbox/ipam/forms/model_forms.py:599
#: netbox/templates/dcim/device.html:26
@@ -937,7 +954,7 @@ msgstr "联系"
#: netbox/dcim/forms/model_forms.py:111 netbox/dcim/forms/object_create.py:375
#: netbox/dcim/tables/devices.py:143 netbox/dcim/tables/sites.py:85
#: netbox/extras/filtersets.py:455 netbox/ipam/forms/bulk_edit.py:206
-#: netbox/ipam/forms/bulk_edit.py:438 netbox/ipam/forms/bulk_edit.py:512
+#: netbox/ipam/forms/bulk_edit.py:452 netbox/ipam/forms/bulk_edit.py:526
#: netbox/ipam/forms/filtersets.py:217 netbox/ipam/forms/filtersets.py:422
#: netbox/ipam/forms/filtersets.py:482 netbox/ipam/forms/model_forms.py:571
#: netbox/templates/dcim/device.html:18 netbox/templates/dcim/rack.html:16
@@ -960,8 +977,8 @@ msgstr "地区"
#: netbox/dcim/forms/filtersets.py:675 netbox/dcim/forms/filtersets.py:919
#: netbox/dcim/forms/filtersets.py:1033 netbox/dcim/forms/filtersets.py:1072
#: netbox/dcim/forms/object_create.py:383 netbox/extras/filtersets.py:472
-#: netbox/ipam/forms/bulk_edit.py:211 netbox/ipam/forms/bulk_edit.py:445
-#: netbox/ipam/forms/bulk_edit.py:517 netbox/ipam/forms/filtersets.py:222
+#: netbox/ipam/forms/bulk_edit.py:211 netbox/ipam/forms/bulk_edit.py:459
+#: netbox/ipam/forms/bulk_edit.py:531 netbox/ipam/forms/filtersets.py:222
#: netbox/ipam/forms/filtersets.py:427 netbox/ipam/forms/filtersets.py:487
#: netbox/ipam/forms/model_forms.py:584
#: netbox/virtualization/forms/bulk_edit.py:86
@@ -991,7 +1008,7 @@ msgstr "站点组"
#: netbox/ipam/forms/filtersets.py:266 netbox/ipam/forms/filtersets.py:307
#: netbox/ipam/forms/filtersets.py:382 netbox/ipam/forms/filtersets.py:475
#: netbox/ipam/forms/filtersets.py:534 netbox/ipam/forms/filtersets.py:552
-#: netbox/netbox/tables/tables.py:255
+#: netbox/netbox/tables/tables.py:256
#: netbox/virtualization/forms/filtersets.py:45
#: netbox/virtualization/forms/filtersets.py:103
#: netbox/virtualization/forms/filtersets.py:194
@@ -1249,7 +1266,7 @@ msgstr "运营商网络"
#: netbox/extras/tables/tables.py:215 netbox/extras/tables/tables.py:263
#: netbox/extras/tables/tables.py:286 netbox/extras/tables/tables.py:336
#: netbox/extras/tables/tables.py:388 netbox/extras/tables/tables.py:411
-#: netbox/ipam/forms/bulk_edit.py:391 netbox/ipam/forms/filtersets.py:386
+#: netbox/ipam/forms/bulk_edit.py:405 netbox/ipam/forms/filtersets.py:386
#: netbox/ipam/tables/asn.py:16 netbox/ipam/tables/ip.py:85
#: netbox/ipam/tables/ip.py:160 netbox/ipam/tables/services.py:15
#: netbox/ipam/tables/services.py:40 netbox/ipam/tables/vlans.py:64
@@ -1409,6 +1426,16 @@ msgstr "账户统计"
msgid "ASN Count"
msgstr "ASN统计"
+#: netbox/circuits/views.py:331
+#, python-brace-format
+msgid "No terminations have been defined for circuit {circuit}."
+msgstr ""
+
+#: netbox/circuits/views.py:380
+#, python-brace-format
+msgid "Swapped terminations for circuit {circuit}."
+msgstr ""
+
#: netbox/core/api/views.py:36
msgid "This user does not have permission to synchronize this data source."
msgstr "该用户无权同步该数据源。"
@@ -1435,7 +1462,7 @@ msgstr "完成"
#: netbox/core/choices.py:22 netbox/core/choices.py:59
#: netbox/core/constants.py:20 netbox/core/tables/tasks.py:34
#: netbox/dcim/choices.py:176 netbox/dcim/choices.py:222
-#: netbox/dcim/choices.py:1536 netbox/extras/choices.py:230
+#: netbox/dcim/choices.py:1538 netbox/extras/choices.py:230
#: netbox/virtualization/choices.py:47
msgid "Failed"
msgstr "故障"
@@ -1687,7 +1714,7 @@ msgstr "必须上传文件或选择数据文件进行同步"
msgid "Rack Elevations"
msgstr "机柜立面图"
-#: netbox/core/forms/model_forms.py:157 netbox/dcim/choices.py:1447
+#: netbox/core/forms/model_forms.py:157 netbox/dcim/choices.py:1449
#: netbox/dcim/forms/bulk_edit.py:867 netbox/dcim/forms/bulk_edit.py:1250
#: netbox/dcim/forms/bulk_edit.py:1268 netbox/dcim/tables/racks.py:89
#: netbox/netbox/navigation/menu.py:276 netbox/netbox/navigation/menu.py:280
@@ -1991,7 +2018,7 @@ msgstr "最后更新日期"
#: netbox/core/tables/jobs.py:10 netbox/core/tables/tasks.py:76
#: netbox/dcim/tables/devicetypes.py:165 netbox/extras/tables/tables.py:185
-#: netbox/extras/tables/tables.py:357 netbox/netbox/tables/tables.py:188
+#: netbox/extras/tables/tables.py:357 netbox/netbox/tables/tables.py:189
#: netbox/templates/dcim/virtualchassis_edit.html:52
#: netbox/utilities/forms/forms.py:73
#: netbox/wireless/tables/wirelesslink.py:16
@@ -2002,7 +2029,7 @@ msgstr "ID"
#: netbox/extras/tables/tables.py:248 netbox/extras/tables/tables.py:294
#: netbox/extras/tables/tables.py:367 netbox/extras/tables/tables.py:485
#: netbox/extras/tables/tables.py:516 netbox/extras/tables/tables.py:556
-#: netbox/extras/tables/tables.py:593 netbox/netbox/tables/tables.py:243
+#: netbox/extras/tables/tables.py:593 netbox/netbox/tables/tables.py:244
#: netbox/templates/extras/eventrule.html:84
#: netbox/templates/extras/journalentry.html:18
#: netbox/templates/extras/objectchange.html:58
@@ -2040,7 +2067,7 @@ msgstr "没有找到插件"
msgid "Oldest Task"
msgstr "最早的任务"
-#: netbox/core/tables/tasks.py:42 netbox/templates/core/rq_worker_list.html:34
+#: netbox/core/tables/tasks.py:42 netbox/templates/core/rq_worker_list.html:39
msgid "Workers"
msgstr "Workers"
@@ -2096,12 +2123,56 @@ msgstr "PID"
msgid "No workers found"
msgstr "没有找到workers"
-#: netbox/core/views.py:331 netbox/core/views.py:374 netbox/core/views.py:397
-#: netbox/core/views.py:415 netbox/core/views.py:450
+#: netbox/core/views.py:81
+#, python-brace-format
+msgid "Queued job #{id} to sync {datasource}"
+msgstr ""
+
+#: netbox/core/views.py:241
+#, python-brace-format
+msgid "Restored configuration revision #{id}"
+msgstr ""
+
+#: netbox/core/views.py:334 netbox/core/views.py:377 netbox/core/views.py:453
#, python-brace-format
msgid "Job {job_id} not found"
msgstr "任务{job_id} 未发现"
+#: netbox/core/views.py:385
+#, python-brace-format
+msgid "Job {id} has been deleted."
+msgstr ""
+
+#: netbox/core/views.py:387
+#, python-brace-format
+msgid "Error deleting job {id}: {error}"
+msgstr ""
+
+#: netbox/core/views.py:400 netbox/core/views.py:418
+#, python-brace-format
+msgid "Job {id} not found."
+msgstr ""
+
+#: netbox/core/views.py:406
+#, python-brace-format
+msgid "Job {id} has been re-enqueued."
+msgstr ""
+
+#: netbox/core/views.py:441
+#, python-brace-format
+msgid "Job {id} has been enqueued."
+msgstr ""
+
+#: netbox/core/views.py:460
+#, python-brace-format
+msgid "Job {id} has been stopped."
+msgstr ""
+
+#: netbox/core/views.py:462
+#, python-brace-format
+msgid "Failed to stop job {id}"
+msgstr ""
+
#: netbox/dcim/api/serializers_/devices.py:50
#: netbox/dcim/api/serializers_/devicetypes.py:26
msgid "Position (U)"
@@ -2116,7 +2187,7 @@ msgid "Staging"
msgstr "暂存"
#: netbox/dcim/choices.py:23 netbox/dcim/choices.py:178
-#: netbox/dcim/choices.py:223 netbox/dcim/choices.py:1460
+#: netbox/dcim/choices.py:223 netbox/dcim/choices.py:1462
#: netbox/virtualization/choices.py:23 netbox/virtualization/choices.py:48
msgid "Decommissioning"
msgstr "报废"
@@ -2179,7 +2250,7 @@ msgstr "已弃用"
msgid "Millimeters"
msgstr "毫米"
-#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1482
+#: netbox/dcim/choices.py:115 netbox/dcim/choices.py:1484
msgid "Inches"
msgstr "英寸"
@@ -2265,7 +2336,7 @@ msgstr "从右向左"
msgid "Side to rear"
msgstr "侧进风后出风"
-#: netbox/dcim/choices.py:198 netbox/dcim/choices.py:1255
+#: netbox/dcim/choices.py:198 netbox/dcim/choices.py:1257
msgid "Passive"
msgstr "被动"
@@ -2294,8 +2365,8 @@ msgid "Proprietary"
msgstr "专用规格"
#: netbox/dcim/choices.py:543 netbox/dcim/choices.py:782
-#: netbox/dcim/choices.py:1171 netbox/dcim/choices.py:1173
-#: netbox/dcim/choices.py:1378 netbox/dcim/choices.py:1380
+#: netbox/dcim/choices.py:1173 netbox/dcim/choices.py:1175
+#: netbox/dcim/choices.py:1380 netbox/dcim/choices.py:1382
#: netbox/netbox/navigation/menu.py:187
msgid "Other"
msgstr "其他"
@@ -2308,11 +2379,11 @@ msgstr "ITA/国际通用标准"
msgid "Physical"
msgstr "物理"
-#: netbox/dcim/choices.py:813 netbox/dcim/choices.py:978
+#: netbox/dcim/choices.py:813 netbox/dcim/choices.py:979
msgid "Virtual"
msgstr "虚拟"
-#: netbox/dcim/choices.py:814 netbox/dcim/choices.py:1051
+#: netbox/dcim/choices.py:814 netbox/dcim/choices.py:1052
#: netbox/dcim/forms/bulk_edit.py:1408 netbox/dcim/forms/filtersets.py:1251
#: netbox/dcim/forms/model_forms.py:936 netbox/dcim/forms/model_forms.py:1344
#: netbox/netbox/navigation/menu.py:127 netbox/netbox/navigation/menu.py:131
@@ -2320,11 +2391,11 @@ msgstr "虚拟"
msgid "Wireless"
msgstr "无线"
-#: netbox/dcim/choices.py:976
+#: netbox/dcim/choices.py:977
msgid "Virtual interfaces"
msgstr "虚拟接口"
-#: netbox/dcim/choices.py:979 netbox/dcim/forms/bulk_edit.py:1303
+#: netbox/dcim/choices.py:980 netbox/dcim/forms/bulk_edit.py:1303
#: netbox/dcim/forms/bulk_import.py:779 netbox/dcim/forms/model_forms.py:922
#: netbox/dcim/tables/devices.py:649 netbox/templates/dcim/interface.html:106
#: netbox/templates/virtualization/vminterface.html:43
@@ -2334,27 +2405,27 @@ msgstr "虚拟接口"
msgid "Bridge"
msgstr "桥接"
-#: netbox/dcim/choices.py:980
+#: netbox/dcim/choices.py:981
msgid "Link Aggregation Group (LAG)"
msgstr "链路聚合组(LAG)"
-#: netbox/dcim/choices.py:984
+#: netbox/dcim/choices.py:985
msgid "Ethernet (fixed)"
msgstr "以太网(固定类型)"
-#: netbox/dcim/choices.py:999
+#: netbox/dcim/choices.py:1000
msgid "Ethernet (modular)"
msgstr "以太网(模块)"
-#: netbox/dcim/choices.py:1035
+#: netbox/dcim/choices.py:1036
msgid "Ethernet (backplane)"
msgstr "以太网(背板)"
-#: netbox/dcim/choices.py:1065
+#: netbox/dcim/choices.py:1067
msgid "Cellular"
msgstr "蜂窝网络"
-#: netbox/dcim/choices.py:1117 netbox/dcim/forms/filtersets.py:304
+#: netbox/dcim/choices.py:1119 netbox/dcim/forms/filtersets.py:304
#: netbox/dcim/forms/filtersets.py:740 netbox/dcim/forms/filtersets.py:894
#: netbox/dcim/forms/filtersets.py:1446
#: netbox/templates/dcim/inventoryitem.html:52
@@ -2362,127 +2433,127 @@ msgstr "蜂窝网络"
msgid "Serial"
msgstr "串口"
-#: netbox/dcim/choices.py:1132
+#: netbox/dcim/choices.py:1134
msgid "Coaxial"
msgstr "同轴电缆接口"
-#: netbox/dcim/choices.py:1152
+#: netbox/dcim/choices.py:1154
msgid "Stacking"
msgstr "堆叠"
-#: netbox/dcim/choices.py:1202
+#: netbox/dcim/choices.py:1204
msgid "Half"
msgstr "半双工"
-#: netbox/dcim/choices.py:1203
+#: netbox/dcim/choices.py:1205
msgid "Full"
msgstr "全双工"
-#: netbox/dcim/choices.py:1204 netbox/netbox/preferences.py:31
+#: netbox/dcim/choices.py:1206 netbox/netbox/preferences.py:31
#: netbox/wireless/choices.py:480
msgid "Auto"
msgstr "自动"
-#: netbox/dcim/choices.py:1215
+#: netbox/dcim/choices.py:1217
msgid "Access"
msgstr "接入"
-#: netbox/dcim/choices.py:1216 netbox/ipam/tables/vlans.py:168
+#: netbox/dcim/choices.py:1218 netbox/ipam/tables/vlans.py:168
#: netbox/ipam/tables/vlans.py:213
#: netbox/templates/dcim/inc/interface_vlans_table.html:7
msgid "Tagged"
msgstr "Trunk口"
-#: netbox/dcim/choices.py:1217
+#: netbox/dcim/choices.py:1219
msgid "Tagged (All)"
msgstr "Trunk口(允许所有VLAN)"
-#: netbox/dcim/choices.py:1246
+#: netbox/dcim/choices.py:1248
msgid "IEEE Standard"
msgstr "IEEE标准"
-#: netbox/dcim/choices.py:1257
+#: netbox/dcim/choices.py:1259
msgid "Passive 24V (2-pair)"
msgstr "24V(2对供电)"
-#: netbox/dcim/choices.py:1258
+#: netbox/dcim/choices.py:1260
msgid "Passive 24V (4-pair)"
msgstr "24V(4对供电)"
-#: netbox/dcim/choices.py:1259
+#: netbox/dcim/choices.py:1261
msgid "Passive 48V (2-pair)"
msgstr "48V(2对供电)"
-#: netbox/dcim/choices.py:1260
+#: netbox/dcim/choices.py:1262
msgid "Passive 48V (4-pair)"
msgstr "48V(4对供电)"
-#: netbox/dcim/choices.py:1322 netbox/dcim/choices.py:1418
+#: netbox/dcim/choices.py:1324 netbox/dcim/choices.py:1420
msgid "Copper"
msgstr "铜缆"
-#: netbox/dcim/choices.py:1345
+#: netbox/dcim/choices.py:1347
msgid "Fiber Optic"
msgstr "光纤"
-#: netbox/dcim/choices.py:1434
+#: netbox/dcim/choices.py:1436
msgid "Fiber"
msgstr "光纤"
-#: netbox/dcim/choices.py:1458 netbox/dcim/forms/filtersets.py:1158
+#: netbox/dcim/choices.py:1460 netbox/dcim/forms/filtersets.py:1158
msgid "Connected"
msgstr "已连接"
-#: netbox/dcim/choices.py:1477
+#: netbox/dcim/choices.py:1479
msgid "Kilometers"
msgstr "公里"
-#: netbox/dcim/choices.py:1478 netbox/templates/dcim/cable_trace.html:65
+#: netbox/dcim/choices.py:1480 netbox/templates/dcim/cable_trace.html:65
msgid "Meters"
msgstr "米"
-#: netbox/dcim/choices.py:1479
+#: netbox/dcim/choices.py:1481
msgid "Centimeters"
msgstr "厘米"
-#: netbox/dcim/choices.py:1480
+#: netbox/dcim/choices.py:1482
msgid "Miles"
msgstr "英里"
-#: netbox/dcim/choices.py:1481 netbox/templates/dcim/cable_trace.html:66
+#: netbox/dcim/choices.py:1483 netbox/templates/dcim/cable_trace.html:66
msgid "Feet"
msgstr "英尺"
-#: netbox/dcim/choices.py:1497 netbox/templates/dcim/device.html:327
+#: netbox/dcim/choices.py:1499 netbox/templates/dcim/device.html:327
#: netbox/templates/dcim/rack.html:152
msgid "Kilograms"
msgstr "千克"
-#: netbox/dcim/choices.py:1498
+#: netbox/dcim/choices.py:1500
msgid "Grams"
msgstr "克"
-#: netbox/dcim/choices.py:1499 netbox/templates/dcim/rack.html:153
+#: netbox/dcim/choices.py:1501 netbox/templates/dcim/rack.html:153
msgid "Pounds"
msgstr "磅"
-#: netbox/dcim/choices.py:1500
+#: netbox/dcim/choices.py:1502
msgid "Ounces"
msgstr "盎司"
-#: netbox/dcim/choices.py:1546 netbox/tenancy/choices.py:17
+#: netbox/dcim/choices.py:1548 netbox/tenancy/choices.py:17
msgid "Primary"
msgstr "主要联系人"
-#: netbox/dcim/choices.py:1547
+#: netbox/dcim/choices.py:1549
msgid "Redundant"
msgstr "冗余"
-#: netbox/dcim/choices.py:1568
+#: netbox/dcim/choices.py:1570
msgid "Single phase"
msgstr "单相电"
-#: netbox/dcim/choices.py:1569
+#: netbox/dcim/choices.py:1571
msgid "Three-phase"
msgstr "三相"
@@ -2852,8 +2923,8 @@ msgstr "指定VID"
#: netbox/dcim/tables/devices.py:615 netbox/ipam/filtersets.py:316
#: netbox/ipam/filtersets.py:327 netbox/ipam/filtersets.py:483
#: netbox/ipam/filtersets.py:584 netbox/ipam/filtersets.py:595
-#: netbox/ipam/forms/bulk_edit.py:227 netbox/ipam/forms/bulk_edit.py:282
-#: netbox/ipam/forms/bulk_edit.py:324 netbox/ipam/forms/bulk_import.py:156
+#: netbox/ipam/forms/bulk_edit.py:240 netbox/ipam/forms/bulk_edit.py:296
+#: netbox/ipam/forms/bulk_edit.py:338 netbox/ipam/forms/bulk_import.py:156
#: netbox/ipam/forms/bulk_import.py:242 netbox/ipam/forms/bulk_import.py:278
#: netbox/ipam/forms/filtersets.py:67 netbox/ipam/forms/filtersets.py:172
#: netbox/ipam/forms/filtersets.py:309 netbox/ipam/forms/model_forms.py:60
@@ -3013,7 +3084,7 @@ msgstr "支持字母和数字。(必须与正在创建的名称数相匹配)"
#: netbox/dcim/forms/bulk_edit.py:116 netbox/dcim/forms/bulk_import.py:99
#: netbox/dcim/forms/model_forms.py:116 netbox/dcim/tables/sites.py:89
-#: netbox/ipam/filtersets.py:985 netbox/ipam/forms/bulk_edit.py:531
+#: netbox/ipam/filtersets.py:985 netbox/ipam/forms/bulk_edit.py:545
#: netbox/ipam/forms/bulk_import.py:444 netbox/ipam/forms/model_forms.py:526
#: netbox/ipam/tables/fhrp.py:67 netbox/ipam/tables/vlans.py:118
#: netbox/ipam/tables/vlans.py:222 netbox/templates/dcim/interface.html:284
@@ -3078,9 +3149,9 @@ msgstr "时区"
#: netbox/dcim/forms/object_import.py:181 netbox/dcim/tables/devices.py:169
#: netbox/dcim/tables/devices.py:797 netbox/dcim/tables/devices.py:908
#: netbox/dcim/tables/devicetypes.py:305 netbox/dcim/tables/racks.py:69
-#: netbox/extras/filtersets.py:504 netbox/ipam/forms/bulk_edit.py:246
-#: netbox/ipam/forms/bulk_edit.py:295 netbox/ipam/forms/bulk_edit.py:343
-#: netbox/ipam/forms/bulk_edit.py:549 netbox/ipam/forms/bulk_import.py:196
+#: netbox/extras/filtersets.py:504 netbox/ipam/forms/bulk_edit.py:259
+#: netbox/ipam/forms/bulk_edit.py:309 netbox/ipam/forms/bulk_edit.py:357
+#: netbox/ipam/forms/bulk_edit.py:563 netbox/ipam/forms/bulk_import.py:196
#: netbox/ipam/forms/bulk_import.py:261 netbox/ipam/forms/bulk_import.py:297
#: netbox/ipam/forms/bulk_import.py:463 netbox/ipam/forms/filtersets.py:237
#: netbox/ipam/forms/filtersets.py:289 netbox/ipam/forms/filtersets.py:360
@@ -3203,7 +3274,7 @@ msgstr "重量单位"
#: netbox/dcim/forms/model_forms.py:422 netbox/dcim/forms/model_forms.py:703
#: netbox/dcim/forms/object_create.py:400 netbox/dcim/tables/devices.py:161
#: netbox/dcim/tables/power.py:70 netbox/dcim/tables/racks.py:148
-#: netbox/ipam/forms/bulk_edit.py:465 netbox/ipam/forms/filtersets.py:442
+#: netbox/ipam/forms/bulk_edit.py:479 netbox/ipam/forms/filtersets.py:442
#: netbox/ipam/forms/model_forms.py:610 netbox/templates/dcim/device.html:30
#: netbox/templates/dcim/inc/cable_termination.html:16
#: netbox/templates/dcim/powerfeed.html:28 netbox/templates/dcim/rack.html:13
@@ -3617,8 +3688,8 @@ msgid "Wireless LANs"
msgstr "无线局域网"
#: netbox/dcim/forms/bulk_edit.py:1401 netbox/dcim/forms/filtersets.py:1249
-#: netbox/dcim/forms/model_forms.py:1337 netbox/ipam/forms/bulk_edit.py:271
-#: netbox/ipam/forms/bulk_edit.py:362 netbox/ipam/forms/filtersets.py:169
+#: netbox/dcim/forms/model_forms.py:1337 netbox/ipam/forms/bulk_edit.py:284
+#: netbox/ipam/forms/bulk_edit.py:376 netbox/ipam/forms/filtersets.py:169
#: netbox/templates/dcim/interface.html:122
#: netbox/templates/ipam/prefix.html:95
#: netbox/virtualization/forms/model_forms.py:349
@@ -3792,7 +3863,7 @@ msgstr "堆叠"
#: netbox/dcim/forms/bulk_import.py:456 netbox/dcim/forms/filtersets.py:659
#: netbox/dcim/forms/filtersets.py:829 netbox/dcim/forms/model_forms.py:465
#: netbox/dcim/tables/devices.py:202 netbox/extras/filtersets.py:548
-#: netbox/extras/forms/filtersets.py:331 netbox/ipam/forms/bulk_edit.py:479
+#: netbox/extras/forms/filtersets.py:331 netbox/ipam/forms/bulk_edit.py:493
#: netbox/ipam/forms/filtersets.py:415 netbox/ipam/forms/filtersets.py:459
#: netbox/ipam/forms/model_forms.py:627 netbox/templates/dcim/device.html:239
#: netbox/templates/virtualization/cluster.html:10
@@ -4136,7 +4207,7 @@ msgstr "无法选定 {model} {name} ,因为它已属于某个模块"
msgid "A {model} named {name} already exists"
msgstr "名为 {name} 的 {model} 已存在"
-#: netbox/dcim/forms/connections.py:48 netbox/dcim/forms/model_forms.py:686
+#: netbox/dcim/forms/connections.py:49 netbox/dcim/forms/model_forms.py:686
#: netbox/dcim/tables/power.py:66
#: netbox/templates/dcim/inc/cable_termination.html:37
#: netbox/templates/dcim/powerfeed.html:24
@@ -4145,13 +4216,13 @@ msgstr "名为 {name} 的 {model} 已存在"
msgid "Power Panel"
msgstr "电源面板"
-#: netbox/dcim/forms/connections.py:57 netbox/dcim/forms/model_forms.py:713
+#: netbox/dcim/forms/connections.py:58 netbox/dcim/forms/model_forms.py:713
#: netbox/templates/dcim/powerfeed.html:21
#: netbox/templates/dcim/powerport.html:80
msgid "Power Feed"
msgstr "电力供给"
-#: netbox/dcim/forms/connections.py:79
+#: netbox/dcim/forms/connections.py:81
msgid "Side"
msgstr "端"
@@ -4202,7 +4273,7 @@ msgid "Has virtual device contexts"
msgstr "有虚拟设备上下文"
#: netbox/dcim/forms/filtersets.py:834 netbox/extras/filtersets.py:537
-#: netbox/ipam/forms/bulk_edit.py:476 netbox/ipam/forms/filtersets.py:464
+#: netbox/ipam/forms/bulk_edit.py:490 netbox/ipam/forms/filtersets.py:464
#: netbox/ipam/forms/model_forms.py:624
#: netbox/virtualization/forms/filtersets.py:112
msgid "Cluster group"
@@ -6135,7 +6206,7 @@ msgstr "电源插座"
#: netbox/templates/virtualization/virtualmachine/base.html:27
#: netbox/templates/virtualization/virtualmachine_list.html:14
#: netbox/virtualization/tables/virtualmachines.py:100
-#: netbox/virtualization/views.py:363 netbox/wireless/tables/wirelesslan.py:55
+#: netbox/virtualization/views.py:365 netbox/wireless/tables/wirelesslan.py:55
msgid "Interfaces"
msgstr "接口"
@@ -6435,24 +6506,53 @@ msgstr "未上架设备"
#: netbox/dcim/views.py:2019 netbox/extras/forms/model_forms.py:453
#: netbox/templates/extras/configcontext.html:10
#: netbox/virtualization/forms/model_forms.py:225
-#: netbox/virtualization/views.py:404
+#: netbox/virtualization/views.py:406
msgid "Config Context"
msgstr "配置实例"
-#: netbox/dcim/views.py:2029 netbox/virtualization/views.py:414
+#: netbox/dcim/views.py:2029 netbox/virtualization/views.py:416
msgid "Render Config"
msgstr "提交配置"
+#: netbox/dcim/views.py:2062 netbox/virtualization/views.py:449
+#, python-brace-format
+msgid "An error occurred while rendering the template: {error}"
+msgstr ""
+
#: netbox/dcim/views.py:2080 netbox/extras/tables/tables.py:447
#: netbox/netbox/navigation/menu.py:234 netbox/netbox/navigation/menu.py:236
#: netbox/virtualization/views.py:179
msgid "Virtual Machines"
msgstr "虚拟机"
-#: netbox/dcim/views.py:2963 netbox/ipam/tables/ip.py:234
+#: netbox/dcim/views.py:2828
+#, python-brace-format
+msgid "Installed device {device} in bay {device_bay}."
+msgstr ""
+
+#: netbox/dcim/views.py:2869
+#, python-brace-format
+msgid "Removed device {device} from bay {device_bay}."
+msgstr ""
+
+#: netbox/dcim/views.py:2975 netbox/ipam/tables/ip.py:234
msgid "Children"
msgstr "子网"
+#: netbox/dcim/views.py:3441
+msgid "Added member {escape(device)}"
+msgstr ""
+
+#: netbox/dcim/views.py:3488
+#, python-brace-format
+msgid "Unable to remove master device {device} from the virtual chassis."
+msgstr ""
+
+#: netbox/dcim/views.py:3501
+#, python-brace-format
+msgid "Removed {device} from virtual chassis {chassis}"
+msgstr ""
+
#: netbox/extras/api/customfields.py:88
#, python-brace-format
msgid "Unknown related object(s): {name}"
@@ -7014,7 +7114,7 @@ msgstr "激活的"
#: netbox/extras/forms/model_forms.py:204
#: netbox/extras/forms/model_forms.py:261
#: netbox/extras/forms/model_forms.py:365
-#: netbox/users/forms/model_forms.py:273
+#: netbox/users/forms/model_forms.py:277
msgid "Object types"
msgstr "对象类型"
@@ -7121,7 +7221,7 @@ msgstr "选项"
#: netbox/extras/forms/model_forms.py:448 netbox/templates/core/job.html:90
#: netbox/templates/extras/eventrule.html:90
msgid "Data"
-msgstr "日期"
+msgstr "数据"
#: netbox/extras/forms/filtersets.py:153 netbox/extras/forms/filtersets.py:342
#: netbox/extras/forms/filtersets.py:427 netbox/netbox/choices.py:133
@@ -7190,7 +7290,7 @@ msgstr "站点组"
#: netbox/extras/forms/model_forms.py:398 netbox/netbox/navigation/menu.py:20
#: netbox/templates/dcim/site.html:127
msgid "Locations"
-msgstr "室内位置"
+msgstr "位置"
#: netbox/extras/forms/filtersets.py:370
#: netbox/extras/forms/model_forms.py:403
@@ -7337,7 +7437,7 @@ msgstr "已保存的过滤器"
#: netbox/extras/forms/model_forms.py:245
#: netbox/templates/extras/webhook.html:23
msgid "HTTP Request"
-msgstr "HTTP Request"
+msgstr "HTTP 请求"
#: netbox/extras/forms/model_forms.py:247
#: netbox/templates/extras/webhook.html:44
@@ -7394,13 +7494,13 @@ msgstr "租户"
#: netbox/templates/extras/configcontext.html:60
#: netbox/templates/ipam/ipaddress.html:59
#: netbox/templates/ipam/vlan_edit.html:30
-#: netbox/tenancy/forms/filtersets.py:87 netbox/users/forms/model_forms.py:311
+#: netbox/tenancy/forms/filtersets.py:87 netbox/users/forms/model_forms.py:315
msgid "Assignment"
msgstr "分配"
#: netbox/extras/forms/model_forms.py:482
msgid "Data is populated from the remote source selected below."
-msgstr "任务终止"
+msgstr "数据是从下面选择的远程源填充的。"
#: netbox/extras/forms/model_forms.py:488
msgid "Must specify either local data or a data file"
@@ -7434,7 +7534,7 @@ msgstr " (当前时间: {now})"
#: netbox/extras/forms/reports.py:45 netbox/extras/forms/scripts.py:51
msgid "Scheduled time must be in the future."
-msgstr "计划时间必须是将来的某一时刻"
+msgstr "预定时间需设置在当前时间之后。"
#: netbox/extras/forms/scripts.py:17
msgid "Commit changes"
@@ -7715,111 +7815,111 @@ msgstr "只能在选择字段上设置选项。"
msgid "Object fields must define an object type."
msgstr "对象字段必须定义对象类型。"
-#: netbox/extras/models/customfields.py:360
+#: netbox/extras/models/customfields.py:359
#, python-brace-format
msgid "{type} fields may not define an object type."
msgstr "{type}字段不能定义对象类型。"
-#: netbox/extras/models/customfields.py:440
+#: netbox/extras/models/customfields.py:438
msgid "True"
msgstr "是"
-#: netbox/extras/models/customfields.py:441
+#: netbox/extras/models/customfields.py:439
msgid "False"
msgstr "否"
-#: netbox/extras/models/customfields.py:523
+#: netbox/extras/models/customfields.py:521
#, python-brace-format
msgid "Values must match this regex: {regex}
"
msgstr "值必须与此正则表达式匹配: {regex}
"
-#: netbox/extras/models/customfields.py:617
+#: netbox/extras/models/customfields.py:615
msgid "Value must be a string."
msgstr "值必须为字符串"
-#: netbox/extras/models/customfields.py:619
+#: netbox/extras/models/customfields.py:617
#, python-brace-format
msgid "Value must match regex '{regex}'"
msgstr "值必须与正则表达式'{regex}'匹配"
-#: netbox/extras/models/customfields.py:624
+#: netbox/extras/models/customfields.py:622
msgid "Value must be an integer."
msgstr "值必须是整数。"
-#: netbox/extras/models/customfields.py:627
-#: netbox/extras/models/customfields.py:642
+#: netbox/extras/models/customfields.py:625
+#: netbox/extras/models/customfields.py:640
#, python-brace-format
msgid "Value must be at least {minimum}"
msgstr "值最少为{minimum}"
-#: netbox/extras/models/customfields.py:631
-#: netbox/extras/models/customfields.py:646
+#: netbox/extras/models/customfields.py:629
+#: netbox/extras/models/customfields.py:644
#, python-brace-format
msgid "Value must not exceed {maximum}"
msgstr "值最大为{maximum}"
-#: netbox/extras/models/customfields.py:639
+#: netbox/extras/models/customfields.py:637
msgid "Value must be a decimal."
msgstr "值必须是十进制。"
-#: netbox/extras/models/customfields.py:651
+#: netbox/extras/models/customfields.py:649
msgid "Value must be true or false."
msgstr "值必须为true或false。"
-#: netbox/extras/models/customfields.py:659
+#: netbox/extras/models/customfields.py:657
msgid "Date values must be in ISO 8601 format (YYYY-MM-DD)."
-msgstr "日期格式必须为(YYYY-MM-DD)."
+msgstr "日期格式必须为 ISO 8601 格式(YYYY-MM-DD)."
-#: netbox/extras/models/customfields.py:672
+#: netbox/extras/models/customfields.py:670
msgid "Date and time values must be in ISO 8601 format (YYYY-MM-DD HH:MM:SS)."
-msgstr "日期和时间必须遵循这个格式 (YYYY-MM-DD HH:MM:SS)."
+msgstr "日期和时间必须遵循 ISO 8601 格式 (YYYY-MM-DD HH:MM:SS)."
-#: netbox/extras/models/customfields.py:679
+#: netbox/extras/models/customfields.py:677
#, python-brace-format
msgid "Invalid choice ({value}) for choice set {choiceset}."
msgstr "选项集{choiceset}的选项({value})无效。"
-#: netbox/extras/models/customfields.py:689
+#: netbox/extras/models/customfields.py:687
#, python-brace-format
msgid "Invalid choice(s) ({value}) for choice set {choiceset}."
msgstr "选项集{choiceset}的选项({value})无效。"
-#: netbox/extras/models/customfields.py:698
+#: netbox/extras/models/customfields.py:696
#, python-brace-format
msgid "Value must be an object ID, not {type}"
msgstr "值必须为对象ID, 不是 {type}"
-#: netbox/extras/models/customfields.py:704
+#: netbox/extras/models/customfields.py:702
#, python-brace-format
msgid "Value must be a list of object IDs, not {type}"
msgstr "值必须为对象ID的列表,不是 {type}"
-#: netbox/extras/models/customfields.py:708
+#: netbox/extras/models/customfields.py:706
#, python-brace-format
msgid "Found invalid object ID: {id}"
msgstr "发现错误的对象ID: {id}"
-#: netbox/extras/models/customfields.py:711
+#: netbox/extras/models/customfields.py:709
msgid "Required field cannot be empty."
msgstr "必填字段不能为空。"
-#: netbox/extras/models/customfields.py:730
+#: netbox/extras/models/customfields.py:728
msgid "Base set of predefined choices (optional)"
msgstr "预定义选项的基本集合(可选)"
-#: netbox/extras/models/customfields.py:742
+#: netbox/extras/models/customfields.py:740
msgid "Choices are automatically ordered alphabetically"
msgstr "选项会自动按字母顺序排列"
-#: netbox/extras/models/customfields.py:749
+#: netbox/extras/models/customfields.py:747
msgid "custom field choice set"
msgstr "自定义字段选择集"
-#: netbox/extras/models/customfields.py:750
+#: netbox/extras/models/customfields.py:748
msgid "custom field choice sets"
msgstr "自定义字段选择集"
-#: netbox/extras/models/customfields.py:786
+#: netbox/extras/models/customfields.py:784
msgid "Must define base or extra choices."
msgstr "必须定义基本选项或额外选项。"
@@ -7978,7 +8078,7 @@ msgstr ""
#: netbox/extras/models/models.py:243
msgid "Enable SSL certificate verification. Disable with caution!"
-msgstr "启用SSL证书验证。禁用时请注意!"
+msgstr "启用 SSL 证书验证。请谨慎禁用!"
#: netbox/extras/models/models.py:249 netbox/templates/extras/webhook.html:51
msgid "CA File Path"
@@ -8250,7 +8350,7 @@ msgstr "脚本因错误而中止:"
#: netbox/extras/scripts.py:689
msgid "An exception occurred: "
-msgstr "发生异常:"
+msgstr "出现异常:"
#: netbox/extras/scripts.py:692
msgid "Database changes have been reverted due to error."
@@ -8400,7 +8500,7 @@ msgstr "此字段必须不为空"
#: netbox/extras/validators.py:95
msgid "Validation rules must be passed as a dictionary"
-msgstr "验证规则必须作为字典传递"
+msgstr "验证规则必须以字典形式传递"
#: netbox/extras/validators.py:120
#, python-brace-format
@@ -8419,7 +8519,7 @@ msgstr "{model}的属性 \"{name}\"无效"
#: netbox/extras/views.py:889
msgid "Your dashboard has been reset."
-msgstr "您的仪表盘已重置。"
+msgstr "仪表盘已重置。"
#: netbox/extras/views.py:935
msgid "Added widget: "
@@ -8439,7 +8539,7 @@ msgstr "删除小组件错误:"
#: netbox/extras/views.py:1101
msgid "Unable to run script: RQ worker process not running."
-msgstr "无法运行脚本:RQ worker进程未运行。"
+msgstr "无法运行脚本:RQ worker 进程未运行。"
#: netbox/ipam/api/field_serializers.py:17
msgid "Enter a valid IPv4 or IPv6 address with optional mask."
@@ -8452,7 +8552,7 @@ msgstr "IP 地址格式无效: {data}"
#: netbox/ipam/api/field_serializers.py:37
msgid "Enter a valid IPv4 or IPv6 prefix and mask in CIDR notation."
-msgstr "以CIDR格式输入有效的IPv4或IPv6前缀和掩码。"
+msgstr "请输入有效的IPv4或IPv6前缀和掩码(格式为 CIDR)。"
#: netbox/ipam/api/field_serializers.py:44
#, python-brace-format
@@ -8462,7 +8562,7 @@ msgstr "无效的IP前缀格式: {data}"
#: netbox/ipam/api/views.py:358
msgid ""
"Insufficient space is available to accommodate the requested prefix size(s)"
-msgstr "可用IP不足,无法容纳此请求的前缀大小(s)"
+msgstr "可用 IP 不足,无法容纳此请求的前缀大小"
#: netbox/ipam/choices.py:30
msgid "Container"
@@ -8586,7 +8686,7 @@ msgid "Prefixes which contain this prefix or IP"
msgstr "包含此前缀或IP的前缀"
#: netbox/ipam/filtersets.py:304 netbox/ipam/filtersets.py:572
-#: netbox/ipam/forms/bulk_edit.py:327 netbox/ipam/forms/filtersets.py:196
+#: netbox/ipam/forms/bulk_edit.py:341 netbox/ipam/forms/filtersets.py:196
#: netbox/ipam/forms/filtersets.py:331
msgid "Mask length"
msgstr "掩码长度"
@@ -8617,18 +8717,18 @@ msgstr "上级前缀"
#: netbox/ipam/filtersets.py:616 netbox/ipam/filtersets.py:856
#: netbox/ipam/filtersets.py:1091 netbox/vpn/filtersets.py:404
msgid "Virtual machine (name)"
-msgstr "虚拟机(名称)"
+msgstr "虚拟机(名称)"
#: netbox/ipam/filtersets.py:621 netbox/ipam/filtersets.py:861
#: netbox/ipam/filtersets.py:1085 netbox/virtualization/filtersets.py:278
#: netbox/virtualization/filtersets.py:317 netbox/vpn/filtersets.py:409
msgid "Virtual machine (ID)"
-msgstr "虚拟机(ID)"
+msgstr "虚拟机(ID)"
#: netbox/ipam/filtersets.py:627 netbox/vpn/filtersets.py:97
#: netbox/vpn/filtersets.py:415
msgid "Interface (name)"
-msgstr "接口(名称)"
+msgstr "接口(名称)"
#: netbox/ipam/filtersets.py:638 netbox/vpn/filtersets.py:108
#: netbox/vpn/filtersets.py:426
@@ -8641,7 +8741,7 @@ msgstr "虚拟接口(ID)"
#: netbox/ipam/filtersets.py:648
msgid "FHRP group (ID)"
-msgstr "FHRP组(ID)"
+msgstr "FHRP 组 (ID)"
#: netbox/ipam/filtersets.py:652
msgid "Is assigned to an interface"
@@ -8653,11 +8753,11 @@ msgstr "已分配"
#: netbox/ipam/filtersets.py:668
msgid "Service (ID)"
-msgstr "服务(ID)"
+msgstr "服务 (ID)"
#: netbox/ipam/filtersets.py:673
msgid "NAT inside IP address (ID)"
-msgstr "NAT 内部 IP 地址(ID)"
+msgstr "NAT 内部 IP 地址 (ID)"
#: netbox/ipam/filtersets.py:1096
msgid "IP address (ID)"
@@ -8665,7 +8765,7 @@ msgstr "IP 地址 (ID)"
#: netbox/ipam/filtersets.py:1102 netbox/ipam/models/ip.py:788
msgid "IP address"
-msgstr "IP地址"
+msgstr "IP 地址"
#: netbox/ipam/filtersets.py:1131
msgid "Primary IPv4 (ID)"
@@ -8682,7 +8782,7 @@ msgstr "输入有效的 IPv4 或 IPv6 地址(不带掩码)。"
#: netbox/ipam/formfields.py:32
#, python-brace-format
msgid "Invalid IPv4/IPv6 address format: {address}"
-msgstr "IPv4/IPv6 地址格式无效: {address}"
+msgstr "IPv4/IPv6 地址格式无效:{address}"
#: netbox/ipam/formfields.py:37
msgid "This field requires an IP address without a mask."
@@ -8698,7 +8798,7 @@ msgstr "输入有效的 IPv4 或 IPv6 地址(带有 CIDR 掩码)。"
#: netbox/ipam/formfields.py:56
msgid "CIDR mask (e.g. /24) is required."
-msgstr "需要CIDR掩码(例如/24)"
+msgstr "需要 CIDR 掩码(例如/24)"
#: netbox/ipam/forms/bulk_create.py:13
msgid "Address pattern"
@@ -8731,26 +8831,52 @@ msgstr "区域互联网注册管理机构"
msgid "Date added"
msgstr "添加日期"
-#: netbox/ipam/forms/bulk_edit.py:230
-msgid "Prefix length"
-msgstr "前缀长"
+#: netbox/ipam/forms/bulk_edit.py:227 netbox/ipam/forms/model_forms.py:637
+#: netbox/ipam/forms/model_forms.py:679 netbox/ipam/tables/ip.py:251
+#: netbox/templates/ipam/vlan_edit.html:37
+#: netbox/templates/ipam/vlangroup.html:27
+msgid "VLAN Group"
+msgstr "VLAN组"
-#: netbox/ipam/forms/bulk_edit.py:253 netbox/ipam/forms/filtersets.py:241
+#: netbox/ipam/forms/bulk_edit.py:232 netbox/ipam/forms/bulk_import.py:184
+#: netbox/ipam/forms/filtersets.py:256 netbox/ipam/forms/model_forms.py:216
+#: netbox/ipam/models/vlans.py:214 netbox/ipam/tables/ip.py:255
+#: netbox/templates/ipam/prefix.html:60 netbox/templates/ipam/vlan.html:12
+#: netbox/templates/ipam/vlan/base.html:6
+#: netbox/templates/ipam/vlan_edit.html:10
+#: netbox/templates/wireless/wirelesslan.html:30
+#: netbox/vpn/forms/bulk_import.py:304 netbox/vpn/forms/filtersets.py:284
+#: netbox/vpn/forms/model_forms.py:433 netbox/vpn/forms/model_forms.py:452
+#: netbox/wireless/forms/bulk_edit.py:55
+#: netbox/wireless/forms/bulk_import.py:48
+#: netbox/wireless/forms/model_forms.py:48 netbox/wireless/models.py:101
+msgid "VLAN"
+msgstr "VLAN"
+
+#: netbox/ipam/forms/bulk_edit.py:243
+msgid "Prefix length"
+msgstr "前缀长度"
+
+#: netbox/ipam/forms/bulk_edit.py:266 netbox/ipam/forms/filtersets.py:241
#: netbox/templates/ipam/prefix.html:85
msgid "Is a pool"
msgstr "是一个池"
-#: netbox/ipam/forms/bulk_edit.py:258 netbox/ipam/forms/bulk_edit.py:302
+#: netbox/ipam/forms/bulk_edit.py:271 netbox/ipam/forms/bulk_edit.py:316
#: netbox/ipam/forms/filtersets.py:248 netbox/ipam/forms/filtersets.py:293
#: netbox/ipam/models/ip.py:272 netbox/ipam/models/ip.py:539
msgid "Treat as fully utilized"
msgstr "设置为已被全部占用"
-#: netbox/ipam/forms/bulk_edit.py:350 netbox/ipam/models/ip.py:772
-msgid "DNS name"
-msgstr "DNS名称"
+#: netbox/ipam/forms/bulk_edit.py:285 netbox/ipam/forms/filtersets.py:171
+msgid "VLAN Assignment"
+msgstr "VLAN 分配"
-#: netbox/ipam/forms/bulk_edit.py:371 netbox/ipam/forms/bulk_edit.py:572
+#: netbox/ipam/forms/bulk_edit.py:364 netbox/ipam/models/ip.py:772
+msgid "DNS name"
+msgstr "DNS 名称"
+
+#: netbox/ipam/forms/bulk_edit.py:385 netbox/ipam/forms/bulk_edit.py:586
#: netbox/ipam/forms/bulk_import.py:393 netbox/ipam/forms/bulk_import.py:477
#: netbox/ipam/forms/bulk_import.py:503 netbox/ipam/forms/filtersets.py:390
#: netbox/ipam/forms/filtersets.py:537 netbox/templates/ipam/fhrpgroup.html:22
@@ -8760,12 +8886,12 @@ msgstr "DNS名称"
msgid "Protocol"
msgstr "协议"
-#: netbox/ipam/forms/bulk_edit.py:378 netbox/ipam/forms/filtersets.py:397
+#: netbox/ipam/forms/bulk_edit.py:392 netbox/ipam/forms/filtersets.py:397
#: netbox/ipam/tables/fhrp.py:22 netbox/templates/ipam/fhrpgroup.html:26
msgid "Group ID"
-msgstr "组ID"
+msgstr "组 ID"
-#: netbox/ipam/forms/bulk_edit.py:383 netbox/ipam/forms/filtersets.py:402
+#: netbox/ipam/forms/bulk_edit.py:397 netbox/ipam/forms/filtersets.py:402
#: netbox/wireless/forms/bulk_edit.py:68
#: netbox/wireless/forms/bulk_edit.py:115
#: netbox/wireless/forms/bulk_import.py:62
@@ -8777,11 +8903,11 @@ msgstr "组ID"
msgid "Authentication type"
msgstr "认证类型"
-#: netbox/ipam/forms/bulk_edit.py:388 netbox/ipam/forms/filtersets.py:406
+#: netbox/ipam/forms/bulk_edit.py:402 netbox/ipam/forms/filtersets.py:406
msgid "Authentication key"
msgstr "认证秘钥"
-#: netbox/ipam/forms/bulk_edit.py:405 netbox/ipam/forms/filtersets.py:383
+#: netbox/ipam/forms/bulk_edit.py:419 netbox/ipam/forms/filtersets.py:383
#: netbox/ipam/forms/model_forms.py:472 netbox/netbox/navigation/menu.py:370
#: netbox/templates/ipam/fhrpgroup.html:49
#: netbox/templates/wireless/inc/authentication_attrs.html:5
@@ -8794,28 +8920,28 @@ msgstr "认证秘钥"
msgid "Authentication"
msgstr "身份验证"
-#: netbox/ipam/forms/bulk_edit.py:415
+#: netbox/ipam/forms/bulk_edit.py:429
msgid "Minimum child VLAN VID"
msgstr "最小的子VLAN ID"
-#: netbox/ipam/forms/bulk_edit.py:421
+#: netbox/ipam/forms/bulk_edit.py:435
msgid "Maximum child VLAN VID"
msgstr "最大的子VLAN ID"
-#: netbox/ipam/forms/bulk_edit.py:429 netbox/ipam/forms/model_forms.py:566
+#: netbox/ipam/forms/bulk_edit.py:443 netbox/ipam/forms/model_forms.py:566
msgid "Scope type"
msgstr "作用域类型"
-#: netbox/ipam/forms/bulk_edit.py:491 netbox/ipam/forms/model_forms.py:641
+#: netbox/ipam/forms/bulk_edit.py:505 netbox/ipam/forms/model_forms.py:641
#: netbox/ipam/tables/vlans.py:71 netbox/templates/ipam/vlangroup.html:38
msgid "Scope"
msgstr "作用域"
-#: netbox/ipam/forms/bulk_edit.py:563
+#: netbox/ipam/forms/bulk_edit.py:577
msgid "Site & Group"
msgstr "站点 & 组"
-#: netbox/ipam/forms/bulk_edit.py:577 netbox/ipam/forms/model_forms.py:705
+#: netbox/ipam/forms/bulk_edit.py:591 netbox/ipam/forms/model_forms.py:705
#: netbox/ipam/forms/model_forms.py:737 netbox/ipam/tables/services.py:19
#: netbox/ipam/tables/services.py:49 netbox/templates/ipam/service.html:36
#: netbox/templates/ipam/servicetemplate.html:23
@@ -8839,20 +8965,6 @@ msgstr "指定的 RIR"
msgid "VLAN's group (if any)"
msgstr "VLAN 组(若存在)"
-#: netbox/ipam/forms/bulk_import.py:184 netbox/ipam/forms/filtersets.py:256
-#: netbox/ipam/forms/model_forms.py:216 netbox/ipam/models/vlans.py:214
-#: netbox/ipam/tables/ip.py:255 netbox/templates/ipam/prefix.html:60
-#: netbox/templates/ipam/vlan.html:12 netbox/templates/ipam/vlan/base.html:6
-#: netbox/templates/ipam/vlan_edit.html:10
-#: netbox/templates/wireless/wirelesslan.html:30
-#: netbox/vpn/forms/bulk_import.py:304 netbox/vpn/forms/filtersets.py:284
-#: netbox/vpn/forms/model_forms.py:433 netbox/vpn/forms/model_forms.py:452
-#: netbox/wireless/forms/bulk_edit.py:55
-#: netbox/wireless/forms/bulk_import.py:48
-#: netbox/wireless/forms/model_forms.py:48 netbox/wireless/models.py:101
-msgid "VLAN"
-msgstr "VLAN"
-
#: netbox/ipam/forms/bulk_import.py:307
msgid "Parent device of assigned interface (if any)"
msgstr "指定接口的父设备(如果有)"
@@ -8882,7 +8994,7 @@ msgstr "分配的接口"
#: netbox/ipam/forms/bulk_import.py:324
msgid "Is primary"
-msgstr "首选地址"
+msgstr "首选"
#: netbox/ipam/forms/bulk_import.py:325
msgid "Make this the primary IP for the assigned device"
@@ -8980,10 +9092,6 @@ msgstr "开始"
msgid "End"
msgstr "结束"
-#: netbox/ipam/forms/filtersets.py:171
-msgid "VLAN Assignment"
-msgstr "VLAN 分配"
-
#: netbox/ipam/forms/filtersets.py:186
msgid "Search within"
msgstr "在此前缀内查找"
@@ -9082,7 +9190,7 @@ msgstr "将此IP设置为分配设备/虚拟机的首选 IP"
#: netbox/ipam/forms/model_forms.py:323
msgid "NAT IP (Inside)"
-msgstr "NAT IP (Inside)"
+msgstr "NAT IP(内部)地址"
#: netbox/ipam/forms/model_forms.py:382
msgid "An IP address can only be assigned to a single object."
@@ -9107,12 +9215,6 @@ msgstr "虚拟IP地址"
msgid "Assignment already exists"
msgstr "已被分配"
-#: netbox/ipam/forms/model_forms.py:637 netbox/ipam/forms/model_forms.py:679
-#: netbox/ipam/tables/ip.py:251 netbox/templates/ipam/vlan_edit.html:37
-#: netbox/templates/ipam/vlangroup.html:27
-msgid "VLAN Group"
-msgstr "VLAN组"
-
#: netbox/ipam/forms/model_forms.py:638
msgid "Child VLANs"
msgstr "子类 VLANs"
@@ -9217,7 +9319,7 @@ msgstr "指定FHRP组"
#: netbox/ipam/models/ip.py:65
msgid "private"
-msgstr "私有地址"
+msgstr "私有"
#: netbox/ipam/models/ip.py:66
msgid "IP space managed by this RIR is considered private"
@@ -9241,11 +9343,11 @@ msgstr "添加日期"
#: netbox/ipam/models/ip.py:115
msgid "aggregate"
-msgstr "聚合IP"
+msgstr "聚合"
#: netbox/ipam/models/ip.py:116
msgid "aggregates"
-msgstr "aggregates"
+msgstr "聚合"
#: netbox/ipam/models/ip.py:132
msgid "Cannot create aggregate with /0 mask."
@@ -9536,7 +9638,7 @@ msgstr ""
#: netbox/ipam/models/vrfs.py:30
msgid "route distinguisher"
-msgstr "路由实例"
+msgstr "路由区分符"
#: netbox/ipam/models/vrfs.py:31
msgid "Unique route distinguisher (as defined in RFC 4364)"
@@ -9561,11 +9663,11 @@ msgstr "RT值(按照 RFC 4360 格式)"
#: netbox/ipam/models/vrfs.py:94
msgid "route target"
-msgstr "route target"
+msgstr "路由目标"
#: netbox/ipam/models/vrfs.py:95
msgid "route targets"
-msgstr "route targets"
+msgstr "路由目标"
#: netbox/ipam/tables/asn.py:52
msgid "ASDOT"
@@ -9582,7 +9684,7 @@ msgstr "运营商统计"
#: netbox/ipam/tables/ip.py:95 netbox/netbox/navigation/menu.py:166
#: netbox/netbox/navigation/menu.py:168
msgid "Aggregates"
-msgstr "Aggregates"
+msgstr "聚合"
#: netbox/ipam/tables/ip.py:125
msgid "Added"
@@ -9866,7 +9968,7 @@ msgstr "要在每页底部提示显示的其他内容"
#: netbox/netbox/config/parameters.py:68
msgid "Globally unique IP space"
-msgstr "全局IP地址空间"
+msgstr "全局唯一 IP 地址空间"
#: netbox/netbox/config/parameters.py:70
msgid "Enforce unique IP addressing within the global table"
@@ -10235,7 +10337,7 @@ msgstr "终端"
#: netbox/netbox/navigation/menu.py:219
msgid "IKE Proposals"
-msgstr "IKE Proposals"
+msgstr "IKE 协议提案"
#: netbox/netbox/navigation/menu.py:220
#: netbox/templates/vpn/ikeproposal.html:41
@@ -10244,7 +10346,7 @@ msgstr "IKE策略"
#: netbox/netbox/navigation/menu.py:221
msgid "IPSec Proposals"
-msgstr "IPSEC安全提议"
+msgstr "IPSec 协议提案"
#: netbox/netbox/navigation/menu.py:222
#: netbox/templates/vpn/ipsecproposal.html:37
@@ -10254,7 +10356,7 @@ msgstr "IPSec策略"
#: netbox/netbox/navigation/menu.py:223 netbox/templates/vpn/ikepolicy.html:38
#: netbox/templates/vpn/ipsecpolicy.html:25
msgid "IPSec Profiles"
-msgstr "IPSec通道"
+msgstr "IPSec 配置文件"
#: netbox/netbox/navigation/menu.py:230
#: netbox/templates/dcim/device_edit.html:78
@@ -10266,7 +10368,7 @@ msgstr "虚拟化"
#: netbox/templates/virtualization/virtualmachine/base.html:32
#: netbox/templates/virtualization/virtualmachine_list.html:21
#: netbox/virtualization/tables/virtualmachines.py:103
-#: netbox/virtualization/views.py:385
+#: netbox/virtualization/views.py:387
msgid "Virtual Disks"
msgstr "虚拟磁盘"
@@ -10284,7 +10386,7 @@ msgstr "链路类型"
#: netbox/netbox/navigation/menu.py:261
msgid "Circuit Terminations"
-msgstr "电路终端"
+msgstr "链路终端"
#: netbox/netbox/navigation/menu.py:265 netbox/netbox/navigation/menu.py:267
msgid "Providers"
@@ -10398,13 +10500,13 @@ msgid "Admin"
msgstr "管理员"
#: netbox/netbox/navigation/menu.py:374 netbox/templates/users/group.html:29
-#: netbox/users/forms/model_forms.py:233 netbox/users/forms/model_forms.py:245
-#: netbox/users/forms/model_forms.py:297 netbox/users/tables.py:102
+#: netbox/users/forms/model_forms.py:237 netbox/users/forms/model_forms.py:249
+#: netbox/users/forms/model_forms.py:301 netbox/users/tables.py:102
msgid "Users"
msgstr "用户"
#: netbox/netbox/navigation/menu.py:394 netbox/users/forms/model_forms.py:182
-#: netbox/users/forms/model_forms.py:194 netbox/users/forms/model_forms.py:302
+#: netbox/users/forms/model_forms.py:194 netbox/users/forms/model_forms.py:306
#: netbox/users/tables.py:35 netbox/users/tables.py:106
msgid "Groups"
msgstr "组"
@@ -10415,8 +10517,8 @@ msgid "API Tokens"
msgstr "API Token"
#: netbox/netbox/navigation/menu.py:421 netbox/users/forms/model_forms.py:188
-#: netbox/users/forms/model_forms.py:196 netbox/users/forms/model_forms.py:239
-#: netbox/users/forms/model_forms.py:246
+#: netbox/users/forms/model_forms.py:196 netbox/users/forms/model_forms.py:243
+#: netbox/users/forms/model_forms.py:250
msgid "Permissions"
msgstr "权限"
@@ -10638,17 +10740,17 @@ msgstr "切换下拉菜单"
msgid "Error"
msgstr "错误"
-#: netbox/netbox/tables/tables.py:57
+#: netbox/netbox/tables/tables.py:58
#, python-brace-format
msgid "No {model_name} found"
msgstr "找不到 {model_name} "
-#: netbox/netbox/tables/tables.py:248
+#: netbox/netbox/tables/tables.py:249
#: netbox/templates/generic/bulk_import.html:117
msgid "Field"
msgstr "字段"
-#: netbox/netbox/tables/tables.py:251
+#: netbox/netbox/tables/tables.py:252
msgid "Value"
msgstr "值"
@@ -10656,11 +10758,35 @@ msgstr "值"
msgid "Dummy Plugin"
msgstr "虚拟插件"
-#: netbox/netbox/views/generic/bulk_views.py:405
+#: netbox/netbox/views/generic/bulk_views.py:111
+#, python-brace-format
+msgid ""
+"There was an error rendering the selected export template ({template}): "
+"{error}"
+msgstr ""
+
+#: netbox/netbox/views/generic/bulk_views.py:411
#, python-brace-format
msgid "Row {i}: Object with ID {id} does not exist"
msgstr "第{i}行: ID为{id}的对象不存在"
+#: netbox/netbox/views/generic/bulk_views.py:679
+#: netbox/netbox/views/generic/bulk_views.py:877
+#: netbox/netbox/views/generic/bulk_views.py:925
+#, python-brace-format
+msgid "No {object_type} were selected."
+msgstr ""
+
+#: netbox/netbox/views/generic/bulk_views.py:759
+#, python-brace-format
+msgid "Renamed {count} {object_type}"
+msgstr ""
+
+#: netbox/netbox/views/generic/bulk_views.py:855
+#, python-brace-format
+msgid "Deleted {count} {object_type}"
+msgstr ""
+
#: netbox/netbox/views/generic/feature_views.py:38
msgid "Changelog"
msgstr "变更日志"
@@ -10669,6 +10795,20 @@ msgstr "变更日志"
msgid "Journal"
msgstr "日志"
+#: netbox/netbox/views/generic/feature_views.py:205
+msgid "Unable to synchronize data: No data file set."
+msgstr ""
+
+#: netbox/netbox/views/generic/feature_views.py:209
+#, python-brace-format
+msgid "Synchronized data for {object_type} {object}."
+msgstr ""
+
+#: netbox/netbox/views/generic/feature_views.py:234
+#, python-brace-format
+msgid "Synced {count} {object_type}"
+msgstr ""
+
#: netbox/netbox/views/generic/object_views.py:108
#, python-brace-format
msgid "{class_name} must implement get_children()"
@@ -11234,8 +11374,8 @@ msgstr "后台队列"
#: netbox/templates/core/rq_queue_list.html:24
#: netbox/templates/core/rq_queue_list.html:25
-#: netbox/templates/core/rq_worker_list.html:44
-#: netbox/templates/core/rq_worker_list.html:45
+#: netbox/templates/core/rq_worker_list.html:49
+#: netbox/templates/core/rq_worker_list.html:50
#: netbox/templates/extras/script_result.html:49
#: netbox/templates/extras/script_result.html:51
#: netbox/templates/inc/table_controls_htmx.html:30
@@ -11265,7 +11405,7 @@ msgstr "超时"
#: netbox/templates/core/rq_task.html:69
msgid "Result TTL"
-msgstr "TTL结果"
+msgstr "TTL 结果"
#: netbox/templates/core/rq_task.html:89
msgid "Meta"
@@ -11304,7 +11444,7 @@ msgstr "选择 所有的 %(count)s 个 %(object_type_plural)s
#: netbox/templates/core/rq_worker.html:10
msgid "Worker Info"
-msgstr "任务信息"
+msgstr "Worker 信息"
#: netbox/templates/core/rq_worker.html:31
#: netbox/templates/core/rq_worker.html:40
@@ -11340,9 +11480,10 @@ msgstr "秒"
msgid "Background Workers"
msgstr "后台任务"
-#: netbox/templates/core/rq_worker_list.html:27
-msgid "Workers in "
-msgstr "工作中"
+#: netbox/templates/core/rq_worker_list.html:29
+#, python-format
+msgid "Workers in %(queue_name)s"
+msgstr "在%(queue_name)s的 Worker"
#: netbox/templates/core/system.html:11
#: netbox/utilities/templates/buttons/export.html:4
@@ -11565,11 +11706,11 @@ msgstr "添加组件"
#: netbox/templates/dcim/device/consoleports.html:24
msgid "Add Console Ports"
-msgstr "增加 Console端口"
+msgstr "增加 Console 端口"
#: netbox/templates/dcim/device/consoleserverports.html:24
msgid "Add Console Server Ports"
-msgstr "增加console服务器端口"
+msgstr "增加 Console 服务器端口"
#: netbox/templates/dcim/device/devicebays.html:10
msgid "Add Device Bays"
@@ -11577,7 +11718,7 @@ msgstr "添加设备托架"
#: netbox/templates/dcim/device/frontports.html:24
msgid "Add Front Ports"
-msgstr "添加前向端口"
+msgstr "添加前置接口"
#: netbox/templates/dcim/device/inc/interface_table_controls.html:9
msgid "Hide Enabled"
@@ -11737,7 +11878,7 @@ msgstr "后视图"
#: netbox/templates/dcim/frontport.html:54
msgid "Rear Port Position"
-msgstr "后向端口位置"
+msgstr "后置端口位置"
#: netbox/templates/dcim/frontport.html:72
#: netbox/templates/dcim/interface.html:144
@@ -11745,7 +11886,7 @@ msgstr "后向端口位置"
#: netbox/templates/dcim/powerport.html:63
#: netbox/templates/dcim/rearport.html:68
msgid "Marked as Connected"
-msgstr "标记已连接"
+msgstr "标记为已连接"
#: netbox/templates/dcim/frontport.html:86
#: netbox/templates/dcim/rearport.html:82
@@ -11792,7 +11933,7 @@ msgstr "未连接"
#: netbox/templates/dcim/inc/interface_vlans_table.html:6
msgid "Untagged"
-msgstr "Untagged"
+msgstr "未标记的"
#: netbox/templates/dcim/inc/interface_vlans_table.html:37
msgid "No VLANs Assigned"
@@ -11832,7 +11973,7 @@ msgstr "802.1Q 模式"
#: netbox/templates/dcim/interface.html:125
#: netbox/templates/virtualization/vminterface.html:59
msgid "MAC Address"
-msgstr "MAC地址"
+msgstr "MAC 地址"
#: netbox/templates/dcim/interface.html:151
msgid "Wireless Link"
@@ -11901,7 +12042,7 @@ msgstr "零件ID"
#: netbox/templates/dcim/location.html:17
msgid "Add Child Location"
-msgstr "增加子类室内位置"
+msgstr "增加子类位置"
#: netbox/templates/dcim/location.html:58 netbox/templates/dcim/site.html:56
msgid "Facility"
@@ -11913,7 +12054,7 @@ msgstr "子位置"
#: netbox/templates/dcim/location.html:81 netbox/templates/dcim/site.html:131
msgid "Add a Location"
-msgstr "添加一个室内位置"
+msgstr "添加一个位置"
#: netbox/templates/dcim/location.html:94 netbox/templates/dcim/site.html:144
msgid "Add a Device"
@@ -11955,7 +12096,7 @@ msgstr "电源针脚"
#: netbox/templates/dcim/powerpanel.html:72
msgid "Add Power Feeds"
-msgstr "添加一个供电线路"
+msgstr "添加供电线路"
#: netbox/templates/dcim/powerport.html:44
msgid "Maximum Draw"
@@ -12042,7 +12183,7 @@ msgstr "增加机柜"
#: netbox/templates/dcim/rearport.html:50
msgid "Positions"
-msgstr "职位"
+msgstr "位置"
#: netbox/templates/dcim/region.html:17
#: netbox/templates/dcim/sitegroup.html:17
@@ -12112,12 +12253,12 @@ msgstr "添加新成员到堆叠%(virtual_chassis)s中"
#: netbox/templates/dcim/virtualchassis_add_member.html:19
msgid "Add New Member"
-msgstr "新增会员"
+msgstr "新增成员"
#: netbox/templates/dcim/virtualchassis_add_member.html:27
#: netbox/templates/generic/object_edit.html:78
#: netbox/templates/users/objectpermission.html:31
-#: netbox/users/forms/filtersets.py:68 netbox/users/forms/model_forms.py:309
+#: netbox/users/forms/filtersets.py:68 netbox/users/forms/model_forms.py:313
msgid "Actions"
msgstr "激活"
@@ -12578,7 +12719,7 @@ msgstr "标记的对象"
#: netbox/templates/extras/webhook.html:26
msgid "HTTP Method"
-msgstr "HTTP方式"
+msgstr "HTTP方法"
#: netbox/templates/extras/webhook.html:34
msgid "HTTP Content Type"
@@ -13026,7 +13167,7 @@ msgstr "前缀详细信息"
#: netbox/templates/ipam/prefix.html:185
msgid "Network Address"
-msgstr "网络位地址"
+msgstr "网络地址"
#: netbox/templates/ipam/prefix.html:189
msgid "Network Mask"
@@ -13232,7 +13373,7 @@ msgid "View"
msgstr "查看"
#: netbox/templates/users/objectpermission.html:52
-#: netbox/users/forms/model_forms.py:312
+#: netbox/users/forms/model_forms.py:316
msgid "Constraints"
msgstr "限制因素"
@@ -13732,7 +13873,7 @@ msgid ""
"your key prior to submitting this form, as it may no longer be "
"accessible once the token has been created."
msgstr ""
-"Keys的长度必须至少为40个字符。在提交此表单之前请务必记录您的key因为一旦创建了令牌,就可能无法再访问该Keys。"
+"密钥的长度必须至少为40个字符。在提交此表单之前请务必记下您的密钥因为一旦创建了令牌,就可能无法再访问该密钥。"
#: netbox/users/forms/model_forms.py:127
msgid ""
@@ -13740,7 +13881,7 @@ msgid ""
" no restrictions. Example: "
"10.1.1.0/24,192.168.10.16/32,2001:db8:1::/64
"
msgstr ""
-"允许使用Token的 IPv4/IPv6 网络。留空表示无限制。示例: "
+"允许使用 Token 的 IPv4/IPv6 网络。留空表示无限制。示例: "
"10.1.1.0/24,192.168.10.16/32,2001:db8:1::/64
"
#: netbox/users/forms/model_forms.py:176
@@ -13755,30 +13896,30 @@ msgstr "输入与以前相同的密码进行验证。"
msgid "Passwords do not match! Please check your input and try again."
msgstr "密码错误!请检查您的输入,然后重试。"
-#: netbox/users/forms/model_forms.py:291
+#: netbox/users/forms/model_forms.py:295
msgid "Additional actions"
msgstr "其他操作"
-#: netbox/users/forms/model_forms.py:294
+#: netbox/users/forms/model_forms.py:298
msgid "Actions granted in addition to those listed above"
msgstr "除上述操作外,还批准了其他操作"
-#: netbox/users/forms/model_forms.py:310
+#: netbox/users/forms/model_forms.py:314
msgid "Objects"
msgstr "对象"
-#: netbox/users/forms/model_forms.py:322
+#: netbox/users/forms/model_forms.py:326
msgid ""
"JSON expression of a queryset filter that will return only permitted "
"objects. Leave null to match all objects of this type. A list of multiple "
"objects will result in a logical OR operation."
msgstr "查询集筛选器的JSON表达式,该表达式将只返回允许的对象。保留null以匹配此类型的所有对象。多个对象的列表将执行“或”运算。"
-#: netbox/users/forms/model_forms.py:361
+#: netbox/users/forms/model_forms.py:365
msgid "At least one action must be selected."
msgstr "必须至少选择一个操作。"
-#: netbox/users/forms/model_forms.py:379
+#: netbox/users/forms/model_forms.py:383
#, python-brace-format
msgid "Invalid filter for {model}: {error}"
msgstr "{model}的筛选器无效: {error}"
@@ -13840,7 +13981,7 @@ msgstr "允许使用此密钥进行创建/更新/删除操作"
#: netbox/users/models/tokens.py:66
msgid "allowed IPs"
-msgstr "允许的IP"
+msgstr "允许的 IP"
#: netbox/users/models/tokens.py:68
msgid ""
@@ -13876,7 +14017,7 @@ msgstr "用户"
#: netbox/users/models/users.py:104
msgid "A user with this username already exists."
-msgstr "使用此用户名的用户已存在。"
+msgstr "用户名已使用。"
#: netbox/users/tables.py:98
msgid "Custom Actions"
@@ -13921,7 +14062,7 @@ msgstr " '{weight}' 为无效重量(必须是数字)"
#: netbox/utilities/conversion.py:32 netbox/utilities/conversion.py:62
#, python-brace-format
msgid "Unknown unit {unit}. Must be one of the following: {valid_units}"
-msgstr "无效单位{unit}. 必须是这些: {valid_units}"
+msgstr "{unit}无效。请使用 {valid_units}"
#: netbox/utilities/conversion.py:45
msgid "Length must be a positive number"
@@ -13930,7 +14071,7 @@ msgstr "长度必须是正数"
#: netbox/utilities/conversion.py:47
#, python-brace-format
msgid "Invalid value '{length}' for length (must be a number)"
-msgstr " '{length}' 为无效的长度(必须是数字)"
+msgstr " '{length}' 为无效的长度(必须是数字)"
#: netbox/utilities/error_handlers.py:31
#, python-brace-format
@@ -13984,7 +14125,7 @@ msgstr "未知数据格式:{format}"
#: netbox/utilities/forms/bulk_import.py:100
msgid "Unable to detect data format. Please specify."
-msgstr "无法检测数据格式。 请明确说明。"
+msgstr "无法检测数据格式。 请手动指定。"
#: netbox/utilities/forms/bulk_import.py:123
msgid "Invalid CSV delimiter"
@@ -14473,6 +14614,16 @@ msgstr "虚拟磁盘"
msgid "virtual disks"
msgstr "虚拟磁盘"
+#: netbox/virtualization/views.py:274
+#, python-brace-format
+msgid "Added {count} devices to cluster {cluster}"
+msgstr ""
+
+#: netbox/virtualization/views.py:309
+#, python-brace-format
+msgid "Removed {count} devices from cluster {cluster}"
+msgstr ""
+
#: netbox/vpn/choices.py:31
msgid "IPsec - Transport"
msgstr "IPsec-传输模式"
@@ -14515,11 +14666,11 @@ msgstr "证书"
#: netbox/vpn/choices.py:94
msgid "RSA signatures"
-msgstr "RSA签名"
+msgstr "RSA 签名"
#: netbox/vpn/choices.py:95
msgid "DSA signatures"
-msgstr "DSA签名"
+msgstr "DSA 签名"
#: netbox/vpn/choices.py:178 netbox/vpn/choices.py:179
#: netbox/vpn/choices.py:180 netbox/vpn/choices.py:181
@@ -14555,61 +14706,61 @@ msgstr "Ethernet Virtual Private Tree"
#: netbox/vpn/filtersets.py:41
msgid "Tunnel group (ID)"
-msgstr "隧道组(ID)"
+msgstr "隧道组(ID)"
#: netbox/vpn/filtersets.py:47
msgid "Tunnel group (slug)"
-msgstr "隧道组(缩写)"
+msgstr "隧道组(缩写)"
#: netbox/vpn/filtersets.py:54
msgid "IPSec profile (ID)"
-msgstr "IPSec通道(ID)"
+msgstr "IPSec 通道(ID)"
#: netbox/vpn/filtersets.py:60
msgid "IPSec profile (name)"
-msgstr "IPSec通道(名称)"
+msgstr "IPSec 通道(名称)"
#: netbox/vpn/filtersets.py:81
msgid "Tunnel (ID)"
-msgstr "Tunnel (ID)"
+msgstr "隧道 (ID)"
#: netbox/vpn/filtersets.py:87
msgid "Tunnel (name)"
-msgstr "隧道(ID)"
+msgstr "隧道(名称)"
#: netbox/vpn/filtersets.py:118
msgid "Outside IP (ID)"
-msgstr "外部IP(ID)"
+msgstr "外部 IP (ID)"
#: netbox/vpn/filtersets.py:130 netbox/vpn/filtersets.py:153
#: netbox/vpn/filtersets.py:282
msgid "IKE policy (ID)"
-msgstr "IKE策略(ID)"
+msgstr "IKE 策略 (ID)"
#: netbox/vpn/filtersets.py:136 netbox/vpn/filtersets.py:159
#: netbox/vpn/filtersets.py:288
msgid "IKE policy (name)"
-msgstr "IKE策略(名称)"
+msgstr "IKE 策略(名称)"
#: netbox/vpn/filtersets.py:215 netbox/vpn/filtersets.py:292
msgid "IPSec policy (ID)"
-msgstr "IPSec策略(ID)"
+msgstr "IPsec 策略 (ID)"
#: netbox/vpn/filtersets.py:221 netbox/vpn/filtersets.py:298
msgid "IPSec policy (name)"
-msgstr "IPSec策略(名称)"
+msgstr "IPsec 策略(名称)"
#: netbox/vpn/filtersets.py:367
msgid "L2VPN (slug)"
-msgstr "L2VPN(缩写)"
+msgstr "L2VPN(缩写)"
#: netbox/vpn/filtersets.py:431
msgid "VM Interface (ID)"
-msgstr "虚拟接口(ID)"
+msgstr "虚拟接口 (ID)"
#: netbox/vpn/filtersets.py:437
msgid "VLAN (name)"
-msgstr "VLAN (名字)"
+msgstr "VLAN(名称)"
#: netbox/vpn/forms/bulk_edit.py:45 netbox/vpn/forms/bulk_import.py:42
#: netbox/vpn/forms/filtersets.py:54
@@ -14631,13 +14782,13 @@ msgstr "预共享密钥"
#: netbox/vpn/forms/filtersets.py:199 netbox/vpn/forms/model_forms.py:370
#: netbox/vpn/models/crypto.py:104
msgid "IKE policy"
-msgstr "IKE策略"
+msgstr "IKE 策略"
#: netbox/vpn/forms/bulk_edit.py:242 netbox/vpn/forms/bulk_import.py:244
#: netbox/vpn/forms/filtersets.py:204 netbox/vpn/forms/model_forms.py:374
#: netbox/vpn/models/crypto.py:209
msgid "IPSec policy"
-msgstr "IPSec策略"
+msgstr "IPSec 策略"
#: netbox/vpn/forms/bulk_import.py:50
msgid "Tunnel encapsulation"
@@ -14673,7 +14824,7 @@ msgstr "IPSEC安全提议"
#: netbox/vpn/forms/bulk_import.py:236
msgid "IPSec protocol"
-msgstr "IPSEC协议"
+msgstr "IPSEC 协议"
#: netbox/vpn/forms/bulk_import.py:266
msgid "L2VPN type"
@@ -14929,7 +15080,7 @@ msgstr "目的站点"
#: netbox/wireless/choices.py:11
msgid "Access point"
-msgstr "无线AP"
+msgstr "AP"
#: netbox/wireless/choices.py:12
msgid "Station"