Просмотр исходного кода

Closes #11592: Expose FILE_UPLOAD_MAX_MEMORY_SIZE as a setting (#11742)

* Closes #11592: Expose FILE_UPLOAD_MAX_MEMOMORY_SIZE as a setting

* change configuration settings to alphabetic order

* Small example and documentation

---------

Co-authored-by: aron bergur jóhannsson <aronnemi@gmail.com>
Aron Bergur Jóhannsson 3 лет назад
Родитель
Сommit
2db181ea49

+ 8 - 0
docs/configuration/miscellaneous.md

@@ -69,6 +69,14 @@ By default, NetBox will permit users to create duplicate prefixes and IP address
 
 ---
 
+## FILE_UPLOAD_MAX_MEMORY_SIZE
+
+Default: 2621440 (i.e. 2.5 MB).
+
+The maximum size (in bytes) that an upload will be before it gets streamed to the file system. Changing this setting can be useful for example to be able to upload files bigger than 2.5MB to custom scripts for processing.
+
+---
+
 ## GRAPHQL_ENABLED
 
 !!! tip "Dynamic Configuration Parameter"

+ 4 - 0
netbox/netbox/configuration_example.py

@@ -217,6 +217,10 @@ RQ_DEFAULT_TIMEOUT = 300
 # this setting is derived from the installed location.
 # SCRIPTS_ROOT = '/opt/netbox/netbox/scripts'
 
+# The maximum size (in bytes) that an upload will be before it gets streamed to the file system.
+# Useful to be able to upload files bigger than 2.5Mbyte to custom scripts for processing.
+# FILE_UPLOAD_MAX_MEMORY_SIZE = 2621440
+
 # The name to use for the csrf token cookie.
 CSRF_COOKIE_NAME = 'csrftoken'
 

+ 1 - 0
netbox/netbox/settings.py

@@ -91,6 +91,7 @@ DOCS_ROOT = getattr(configuration, 'DOCS_ROOT', os.path.join(os.path.dirname(BAS
 EMAIL = getattr(configuration, 'EMAIL', {})
 EXEMPT_VIEW_PERMISSIONS = getattr(configuration, 'EXEMPT_VIEW_PERMISSIONS', [])
 FIELD_CHOICES = getattr(configuration, 'FIELD_CHOICES', {})
+FILE_UPLOAD_MAX_MEMORY_SIZE = getattr(configuration, 'FILE_UPLOAD_MAX_MEMORY_SIZE', 2621440)
 HTTP_PROXIES = getattr(configuration, 'HTTP_PROXIES', None)
 INTERNAL_IPS = getattr(configuration, 'INTERNAL_IPS', ('127.0.0.1', '::1'))
 JINJA2_FILTERS = getattr(configuration, 'JINJA2_FILTERS', {})