Skip to content

Commit da02f18

Browse files
authored
Merge pull request package-url#16 from tdruez/patch-1
Add a set_package_url method on PackageURLMixin
2 parents c966823 + e2ed8f2 commit da02f18

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

src/packageurl/contrib/django_models.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,3 +109,15 @@ def package_url(self):
109109
except ValueError:
110110
return ''
111111
return str(purl)
112+
113+
def set_package_url(self, package_url):
114+
"""
115+
Set values for each related field of the provided `package_url` string.
116+
Empty/Null values are normalized to `None` and are set as well
117+
to replace any existing values.
118+
This prevent mixing newly provided values with old ones.
119+
"""
120+
purl = PackageURL.from_string(package_url)
121+
122+
for field_name, value in purl.to_dict().items():
123+
setattr(self, field_name, value or None)

0 commit comments

Comments
 (0)