John Anderson
81a0889568
initial static select2 fields
2019-01-03 23:02:05 -05:00
Jeremy Stretch
0a820d9c98
Closes #1871 : Enable filtering sites by parent region
2019-01-03 16:59:49 -05:00
Jeremy Stretch
6ca045e1a9
Merge pull request #2694 from DanSheps/2693-fiber-cable-colors
...
Closes #2693 - Adds additional colors for cables & roles
2019-01-03 15:24:36 -05:00
John Anderson
5285b6926f
updated filter-for attr handling
2019-01-03 03:00:27 -05:00
John Anderson
28a02e9943
initial select2 support
2018-12-30 02:35:18 -05:00
Jeremy Stretch
853b1fad15
Fixes #2712 : Preserve list filtering after editing objects in bulk
2018-12-20 15:33:53 -05:00
Jeremy Stretch
f4a22e5af3
Introduced fgcolor template filter to render ideal foreground color for any background color
2018-12-19 12:17:40 -05:00
Jeremy Stretch
aca57ec281
Fixes #2698 : Remove pagination restriction on bulk component creation for devices/VMs
2018-12-19 10:59:12 -05:00
dansheps
f499f2dd66
Closes #2693
2018-12-14 11:51:20 -06:00
Jeremy Stretch
8364e56e86
Fixes #2676 : Fix exception when passing dictionary value to a ChoiceField
2018-12-11 17:00:20 -05:00
Jeremy Stretch
65edffea63
Merge v2.5 work
2018-12-07 10:51:28 -05:00
Jeremy Stretch
2a07e8f3f0
Move queryset_to_csv() utility into ObjectListView to allow overriding by individual views
2018-12-05 16:35:59 -05:00
Jeremy Stretch
686a65880e
Closes #2495 : Enable deep-merging of config context data
2018-12-05 14:34:49 -05:00
Jeremy Stretch
08b4b24296
Fixes #2622 : Enable filtering cables by multiple types/colors
2018-11-28 14:22:55 -05:00
Tatsushi Demachi
c3cdf8e97e
Fix type mismatches in API view ( #2429 )
...
* Fix tags field to be shown as array in API view
`tags` field in serializers is defineded as `TagListSerializerField`.
It should be shown as an array value in API view but actually, it is a
simple string value.
This fixes it by introducing a new `FieldInspector` to handle
`TagListSerializerField` type field as an array. It doesn't affects any
other type fields.
* Fix SerializedPKRelatedField type API expression
A field definded as `SerializedPKRelatedField` should be shown as an
array of child serializer objects in a response value definition in API
view but it is shown as an array of primary key values (usually
`integer` type) of a child serializer.
This fixes it by introducing a new `FieldInspector` to handle the field.
It doesn't affect any other type fields.
* Fix request parameter representation in API view
In API view, representation of a parameter defined as a sub class of
`WritableNestedSerializer` should be vary between a request and a
response. For example, `tenant` field in `IPAddressSerializer` should be
shown like following as a request body:
```
tenant: integer ...
```
while it should be shown like following as a response body:
```
tenant: {
id: integer ...,
url: string ...,
name: string ...,
slug: string ...
}
```
But in both cases, it is shown as a response body type expression. This
causes an error at sending an API request with that type value.
It is only an API view issue, API can handle a request if a request
parameter is structured as an expected request body by ignoring the
wrong expression.
This fixes the issue by replacing an implicitly used default auto schema
generator class by its sub class and returning a pseudo serializer with
'Writable' prefix at generating a request body. The reason to introduce
a new generator class is that there is no other point which can
distinguish a request and a response. It is not enough to distinguish
POST, PUT, PATCH methods from GET because former cases may return a JSON
object as a response but it is also represented as same as a request
body, causes another mismatch.
This also fixes `SerializedPKRelatedField` type field representation. It
should be shown as an array of primary keys in a request body.
Fixed #2400
2018-11-27 16:14:45 -05:00
Jeremy Stretch
bd7aee7c1f
Closes #2614 : Simplify calls of super() for Python 3
2018-11-27 10:52:24 -05:00
Jeremy Stretch
7d8ae5e763
Fixes #2609 : Fixed exception when ChoiceField integer value is passed as a string
2018-11-26 14:05:57 -05:00
Jeremy Stretch
2bae50f501
Enforce consistent ordering of value/label keys for ChoiceField
2018-11-26 14:02:38 -05:00
John Anderson
fd9b2f2fda
cleanup component filters and UI filter forms for device and device type - #2583
2018-11-15 00:42:01 -05:00
John Anderson
3c0181ef35
added logic to append &type=physical to interface API query for cable creation - #2585
2018-11-14 23:35:15 -05:00
Jeremy Stretch
63bd48003e
Clean up cable termination types
2018-11-14 12:17:18 -05:00
Jeremy Stretch
bc8dbfde7c
Merge branch 'develop' into develop-2.5
2018-11-12 16:03:52 -05:00
Jeremy Stretch
0c33af2140
Fixes #2558 : Filter on all tags when multiple are passed
2018-11-12 15:48:58 -05:00
Jeremy Stretch
bb5432de7d
PEP8 fix
2018-11-08 11:13:03 -05:00
Jeremy Stretch
338ce737c8
Removed deprecated expand_numeric_pattern()
2018-11-06 15:39:38 -05:00
Jeremy Stretch
f41f141130
Removed unused class NullableModelMultipleChoiceField
2018-11-06 15:32:59 -05:00
Jeremy Stretch
9f0169286b
Standardize usage of NaturalOrderingManager
2018-11-06 14:05:23 -05:00
Jeremy Stretch
045856c9ac
Introduced a placeholder template filter
2018-11-05 13:00:46 -05:00
Juho Juopperi
319869c22e
Update django is_safe_url calls to new API ( #2546 )
2018-11-05 08:52:00 -05:00
Jeremy Stretch
f8a961b568
Cleaned up import statements
2018-11-02 15:20:08 -04:00
Jeremy Stretch
521a989d23
Removed Python2 hack
2018-11-02 14:59:48 -04:00
Jeremy Stretch
b05171b126
Upgraded django-tables2 to v2.0.2
2018-11-02 14:27:17 -04:00
Jeremy Stretch
bb5c0989f3
Fixed compatability with Django REST Framework v3.9.0
2018-11-02 13:16:44 -04:00
Jeremy Stretch
ad03a0925b
Fixed cable type filtering
2018-11-01 10:18:37 -04:00
Jeremy Stretch
5e7fccb64e
Add blank choice to ColorSelect widget
2018-11-01 10:14:47 -04:00
Jeremy Stretch
849db8fe44
Finished CableCSVForm
2018-11-01 09:59:53 -04:00
Jeremy Stretch
33cdecbc52
Remove errant print() statement
2018-10-26 14:06:27 -04:00
Jeremy Stretch
83dec3b587
Fixed color display
2018-10-26 13:14:12 -04:00
Jeremy Stretch
3518d023dc
Implemented Cable API endpoint
2018-10-26 12:25:11 -04:00
Jeremy Stretch
6bea8cc546
Added length and length_unit fields to Cable
2018-10-26 10:28:25 -04:00
Jeremy Stretch
35f80f5085
First stab at cable path tracing and automatic endpoint connections
2018-10-24 16:17:01 -04:00
Jeremy Stretch
471bddea09
WIP: Initial work on the cable connection form
2018-10-22 16:58:24 -04:00
Jeremy Stretch
a36b120c8b
Merge branch 'develop-2.5' into 20-physical-cabling
2018-10-19 13:34:21 -04:00
Jeremy Stretch
22ed4f1b53
Merge release v2.4.6
2018-10-10 09:36:51 -04:00
Jeremy Stretch
4c37628784
Fixes #2393 : Fix Unicode support for CSV import under Python 2
2018-10-05 15:33:29 -04:00
Jeremy Stretch
bf47e7cae3
#2487 : Require the 'brief' parameter to evaluate True
2018-10-04 14:50:57 -04:00
Jeremy Stretch
db2721c581
Enable brief API output utilizing nested serializers
2018-10-04 13:43:50 -04:00
Jeremy Stretch
3eddeeadc5
Initial work on #20 - patch panels
2018-10-03 14:04:16 -04:00
Jeremy Stretch
364bbdeab8
Merged release v2.4.5
2018-10-03 11:23:21 -04:00
Jeremy Stretch
15babeb584
Fixes #2414 : Tags field missing from device/VM component creation forms
2018-09-28 16:26:08 -04:00
Jeremy Stretch
020b5ea870
Fixes #2470 : Log the creation of device/VM components as object changes
2018-09-28 16:04:51 -04:00
Jeremy Stretch
292647da14
Closes #2402 : Order and format JSON data in form fields
2018-09-13 11:31:34 -04:00
Jeremy Stretch
2ac60bdf48
Merge branch 'develop' into develop-2.5 (v2.4.4 release)
2018-08-22 12:10:44 -04:00
Jeremy Stretch
e1e41a768a
Fixes #2369 : Corrected time zone validation on site API serializer
2018-08-20 16:53:23 -04:00
Jeremy Stretch
7145f86a6e
#2359 : Extended exempt attributes to 'migrate' command
2018-08-15 15:02:58 -04:00
Jeremy Stretch
7ec4155845
Closes #2359 : Implement custom makemigrations command to ignore extraneous field attributes
2018-08-15 14:18:52 -04:00
Jeremy Stretch
980d62d579
Removed Python 2 string compatibility
2018-08-14 11:58:42 -04:00
Jeremy Stretch
ac546a9711
Closes #2000 : Remove support for Python 2
2018-08-14 11:48:12 -04:00
Jeremy Stretch
a2ff21fab9
Fixes #2334 : TypeError raised when WritableNestedSerializer receives a non-integer value
2018-08-08 15:09:30 -04:00
Jeremy Stretch
c51c20a301
Fixes #2319 : Extend ChoiceField to properly handle true/false choice keys
2018-08-07 13:48:29 -04:00
Jeremy Stretch
1905516536
Fixes #2314 : Serialized representation of object in change log does not incldue assigned tags
2018-08-07 08:52:57 -04:00
Jeremy Stretch
bd5e860be0
Refactored the tests to remove a lot of boilerplate
2018-08-03 11:39:26 -04:00
Jeremy Stretch
1bdfcd1dbe
Fixes #2301 : Fix model validation on assignment of ManyToMany fields via API patch
2018-08-03 10:45:53 -04:00
Jeremy Stretch
f1bc88fc0c
Adopt django-taggit-serializer for representation of assigned tags in the API
2018-08-03 09:43:03 -04:00
John Anderson
722d0d5554
Webhook signal refactor - fixes #2282 ( #2260 )
...
Refactor of webhook signaling system to use the same middleware mechanics of Changelogging
2018-07-30 14:23:49 -04:00
Jeremy Stretch
f7aa259995
Misc cleanup
2018-07-30 14:00:37 -04:00
Jeremy Stretch
f664998d9b
Misc cleanup
2018-07-30 12:49:08 -04:00
Jeremy Stretch
c2416411c1
Renamed ChoiceFieldSerializer and ContentTypeFieldSerializer
2018-07-30 12:41:20 -04:00
Jeremy Stretch
40efa55ec7
Merged release v2.3.7
2018-07-27 11:43:27 -04:00
Jeremy Stretch
e82bf66a76
ExceptionHandlingMiddleware: Use server_error view for custom templates
2018-07-23 23:12:41 -04:00
Jeremy Stretch
c8a73b5b15
Fixes #2266 : Permit additional logging of exceptions beyond custom middleware
2018-07-23 23:00:09 -04:00
Jeremy Stretch
beac676a6e
Cleaned up BulkEditView and BulkDeleteView
2018-07-20 21:18:10 -04:00
Jeremy Stretch
d334bd4477
Corrected exception handling in get_serializer_for_model()
2018-07-16 13:26:26 -04:00
Jeremy Stretch
484a74defd
Misc cleanup for config contexts
2018-07-10 16:16:23 -04:00
Jeremy Stretch
0c4495eb39
Order tags by name only, not item count
2018-07-10 14:25:04 -04:00
Jeremy Stretch
864d49f54d
Fixed regex casting to satisfy pycodestyle
2018-07-10 14:21:40 -04:00
Jeremy Stretch
bd2219276f
Force custom field values to strings for object change serialization
2018-07-10 14:16:16 -04:00
Jeremy Stretch
29172d045d
Added missing import statement
2018-07-10 10:11:09 -04:00
Jeremy Stretch
289a762bf1
Record tags when serializing an object for an ObjectChange
2018-07-10 10:10:22 -04:00
Jeremy Stretch
208409110f
Added bulk tag addition/removal
2018-07-10 10:00:21 -04:00
Jeremy Stretch
edf53d4516
Flip the order of tag and URL name for the tag template tag
2018-07-05 15:20:13 -04:00
Jeremy Stretch
6ddbd79fe6
Fixed object return_url resolution for bulk editing
2018-07-03 09:49:36 -04:00
Jeremy Stretch
d0308e0f58
Merge branch 'develop' into develop-2.4
2018-07-02 17:01:14 -04:00
Jeremy Stretch
cd56e51a61
Closes #1851 : Standardize usage of GetReturnURLMixin
2018-07-02 11:54:41 -04:00
Jeremy Stretch
bf1c7cacc6
Improved rendering of boolean fields in tables
2018-06-29 12:05:56 -04:00
Jeremy Stretch
f5f16ce64b
Include custom fields in ObjectChange data
2018-06-29 10:40:57 -04:00
Jeremy Stretch
b952ec73ce
Introduced the render_json template filter
2018-06-28 10:49:52 -04:00
Anaël Beutot
4e09b32dd9
Fix pycodestyle errors
...
Mainly two kind of errors:
* pokemon exceptions
* invalid escape sequences
2018-06-27 17:24:33 +02:00
Jeremy Stretch
ce27a1d211
serialize_object(): Allow extra data to overwrite existing fields
2018-06-22 15:27:22 -04:00
Jeremy Stretch
6c1b5fdf3a
Moved object serialization into a utility function
2018-06-22 14:00:23 -04:00
Jeremy Stretch
e1055b7f97
Moved ObjectChange creation logic from middleware to ChangeLoggedModel
2018-06-21 13:24:26 -04:00
Jeremy Stretch
a1f6ed1713
Disabled the creation of new UserActions
2018-06-21 10:56:33 -04:00
Jeremy Stretch
23f91274d6
Added API serializer for ObjectChange
2018-06-19 15:04:56 -04:00
Jeremy Stretch
b556d2d626
Renamed CreatedUpdatedModel to ChangeLoggedModel and applied it to all primary and organizational models
2018-06-13 15:40:16 -04:00
Jeremy Stretch
90abeedc3e
Fix natural ordering within object tables
2018-06-11 15:10:31 -04:00
Jeremy Stretch
048e843c39
Added tests for NaturalOrderByManager
2018-06-08 15:42:10 -04:00
Jeremy Stretch
e4f336a843
Establish tests for the utilities app
2018-06-08 14:32:41 -04:00
Jeremy Stretch
33add12069
Merge branch 'develop' into develop-2.4
2018-06-07 16:23:57 -04:00
John Anderson
836478c166
Implements #81 - webhook event backend ( #1640 )
...
* merge branch develop
* bugfix, signals for virtualization's class wasn't correctly defined
* updated webhooks for 2.4 and cleanup
* updated docs to cover changes to supervisor config
* review changes and further cleanup
* updated redis connection settings
* cleanup settings
2018-05-30 11:19:10 -04:00
Jeremy Stretch
918339cfa8
Tweak formatting of message to handle translation strings
2018-05-22 11:19:47 -04:00
Jeremy Stretch
601fb418b5
Tweaked ordering of tags list
2018-05-22 10:51:40 -04:00
Jeremy Stretch
399a633d9d
Post-release version bump
2018-05-21 16:50:31 -04:00
Jeremy Stretch
1d1553275e
Added tags panel to object list view
2018-05-18 15:43:21 -04:00
Jeremy Stretch
e6b3983a4e
Added template tag for tag links
2018-05-18 11:09:11 -04:00
Jeremy Stretch
b0dafcf50f
Initial work on implementing django-taggit for #132
2018-05-08 16:28:26 -04:00
Jeremy Stretch
57f6d22c64
Merge branch 'develop' into develop-2.4
2018-04-19 11:24:11 -04:00
Nicholas St. Germain
9153c71cbf
stop force value split w ArrayFieldSelectMultiple
2018-04-18 14:02:40 -05:00
Jeremy Stretch
ef84889a57
Fixes #2022 : Show 0 for zero-value fields on CSV export
2018-04-12 12:54:21 -04:00
Jeremy Stretch
9de1a8c363
Introduced SerializedPKRelatedField to represent serialized ManyToManyFields
2018-04-06 12:42:25 -04:00
Jeremy Stretch
821fb1e01e
Finished merging writable serializers
2018-04-05 14:12:43 -04:00
Jeremy Stretch
db3cbaf83b
Introduced WritableNestedSerializer
2018-04-04 15:39:14 -04:00
Jeremy Stretch
0969c458b3
Closes #1842 : Implement support for Django 2.0
2018-03-30 10:39:22 -04:00
Jeremy Stretch
720c5fabaf
Merge pull request #1643 from RyanBreaker/wildcard
...
Implements #1586 , add additional variants for ExpandableNameFields
2018-03-22 11:40:54 -04:00
Dave Cameron
e071b7dfd5
The id__in field is a csv-separated string of ids
...
drf_yasg is interpreting it as a number because NumericInFilter inherits
from django's NumberFilter which explicitly identifies as being a
DecimalField.
2018-03-15 17:07:58 -04:00
Dave Cameron
53e4e74930
Differentiate better between boolean and 0, 1 choices
2018-03-15 17:07:58 -04:00
Dave Cameron
b83de7eb11
Use drf_yasg to generate swagger
...
drf_yasg provides more complete swagger output, allowing for generation
of usable clients.
Some custom work was needed to accommodate Netbox's custom field
serializers, and to provide x-nullable attributes where appropriate.
2018-03-15 17:07:58 -04:00
Jeremy Stretch
546f17ab50
Closes #1866 : Introduced AnnotatedMultipleChoiceField for filter forms
2018-03-07 14:16:38 -05:00
Jeremy Stretch
078404fb59
Fixes #1926 : Prevent reassignment of parent device when bulk editing VC member interfaces
2018-03-01 13:10:36 -05:00
Jeremy Stretch
4bb526896f
Fixes #1934 : Fixed exception when rendering export template on an object type with custom fields assigned
2018-03-01 12:37:12 -05:00
Jeremy Stretch
fc9871fba3
Fixes #1935 : Correct API validation of VLANs assigned to interfaces
2018-03-01 12:05:25 -05:00
Jeremy Stretch
08d06bd781
Fixes #1921 : Ignore ManyToManyFields when validating a new object created via the API
2018-03-01 11:16:28 -05:00
Jeremy Stretch
e653f35bf1
Fixes #1884 : Provide additional context to identify devices when creating/editing avirtual chassis
2018-02-14 11:14:04 -05:00
Jeremy Stretch
73c64272d8
Merge branch 'develop' into develop-2.3
2018-02-06 14:58:11 -05:00
Jeremy Stretch
1890e710cb
Fixed quoting of line breaks inside a CSV field
2018-02-02 16:31:23 -05:00
Jeremy Stretch
b96e3af6c7
Closes #1714 : Standardized CSV export functionality for all object lists
2018-02-02 16:12:57 -05:00
Jeremy Stretch
60c03a646c
Fixes #1859 : Implemented support for line breaks within CSV fields
2018-02-02 13:32:16 -05:00
Jeremy Stretch
59dcbce417
Refactored CSV export logic
2018-02-02 11:36:45 -05:00
Jeremy Stretch
6b101d2c49
Merge branch 'develop' into develop-2.3
2018-01-31 11:13:17 -05:00
Jeremy Stretch
e0aa2c33e9
Fixes #1850 : Fix TypeError when attempting IP address import if only unnamed devices exist
2018-01-31 10:03:05 -05:00
Jeremy Stretch
0714a40509
Merge branch 'develop' into develop-2.3
2018-01-19 10:54:26 -05:00
Jeremy Stretch
78ed85943b
Fixes #1765 : Improved rendering of null options for model choice fields in filter forms
2017-12-26 12:08:22 -05:00
Jeremy Stretch
d84e5d1839
Cleaned up component tables and checkbox toggling
2017-12-21 13:29:02 -05:00
Jeremy Stretch
b65d994397
Fixes #1136 : Enforce model validation during bulk update
2017-12-20 13:04:00 -05:00
Jeremy Stretch
b20258c66e
Closes #1283 : Added a time zone field to the site model
2017-12-19 17:24:14 -05:00
Jeremy Stretch
02e01b7386
Merge pull request #1782 from digitalocean/99-virtual-chassis
...
Virtual Chassis Support
2017-12-18 17:09:53 -05:00
Mike Culbertson
1cebc1248b
Fix for #1778 .
...
This will set initial values for visible bulk-add form fields from query args.
2017-12-16 12:28:37 -05:00
Jeremy Stretch
153409d37e
Obsoleted ComponentEditView and ComponentDeleteView
2017-12-15 15:57:49 -05:00
Jeremy Stretch
a9af75bbd1
Fixes #1767 : Use proper template for 404 responses
2017-12-13 11:49:36 -05:00
Jeremy Stretch
859f89101e
Fixes #1727 : Added missing import for M2M_FIELD_TYPES
2017-12-07 15:36:08 -05:00
Jeremy Stretch
04ba57cb38
Fixed up validation of Interface VLAN assignments
2017-11-14 16:15:23 -05:00
Jeremy Stretch
ba42ad2115
Merge branch '150-interface-vlans' into develop-2.3
2017-11-14 15:36:14 -05:00
Jeremy Stretch
3df8c63d5c
Merge branch 'develop' into develop-2.3
2017-11-14 14:38:32 -05:00
Jeremy Stretch
a0bb7b08bd
Closes #1512 : Added a view to search for an IP address being assigned to an interface
2017-11-10 11:58:59 -05:00
Jeremy Stretch
198170ca48
Closes #1553 : Introduced support for bulk object creation via the API
2017-11-07 15:36:10 -05:00
Jeremy Stretch
00986fd7bf
Closes #1691 : Cleaned up and reorganized import statements
2017-11-07 11:08:23 -05:00
Jeremy Stretch
2519ebff9d
Tweaked exception-handling middleware to preserve tracebacks
2017-11-06 17:48:13 -05:00
Jeremy Stretch
6b0721cc21
Fixed PermissionError handling for Python 2
2017-11-06 17:24:09 -05:00
Jeremy Stretch
f77bf72de8
Closes #1683 : Replaced default 500 handler with custom middleware to provide preliminary troubleshooting assistance
2017-11-03 13:24:31 -04:00
Ryan Breaker
57973f62c5
Fix bug with numbers >10
2017-10-31 22:03:57 -05:00
Jeremy Stretch
4668149943
Fixes #1649 : Correct fitlering on null values (e.g. ?tenant_id=0) for django-filters v1.1.0+
2017-10-30 17:20:22 -04:00