Skip to content

Commit 16bb3e3

Browse files
authored
Merge pull request #50 from datopian/fix/fix-context
fix: context error workaround
2 parents bee3f51 + ae0103e commit 16bb3e3

File tree

2 files changed

+18
-9
lines changed

2 files changed

+18
-9
lines changed

ckanext/versions/logic/action.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,6 @@ def _version_create_or_update(context, data_dict):
147147
notes = data_dict.get("version_notes")
148148
package_id = data_dict.get("id")
149149
existing_version = DatasetVersion.get(name=current_version, package_id=package_id)
150-
print(notes)
151150

152151
if existing_version:
153152
try:

ckanext/versions/uploader.py

Lines changed: 18 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
import os
22
import datetime
33
import ckan.plugins.toolkit as toolkit
4+
from flask import has_request_context
5+
46
from ckan.lib.uploader import ResourceUpload as DefaultResourceUpload
57

68

@@ -27,13 +29,18 @@ def __init__(self, resource):
2729
self.resource = resource
2830

2931
def get_path(self, id, filename):
30-
last_modified_str = _get_stringified_date(
31-
self.resource.get("last_modified")
32-
)
33-
request_timestamp = toolkit.request.view_args.get("timestamp")
34-
last_modified_str = request_timestamp or last_modified_str
35-
base_directory = self.get_directory(id, self.storage_path)
36-
directory = os.path.join(base_directory, last_modified_str)
32+
if self.resource and self.resource.get("last_modified", None):
33+
last_modified_str = _get_stringified_date(
34+
self.resource.get("last_modified")
35+
)
36+
if has_request_context():
37+
request_timestamp = toolkit.request.view_args.get("timestamp")
38+
else:
39+
request_timestamp = None
40+
41+
last_modified_str = request_timestamp or last_modified_str
42+
base_directory = self.get_directory(id, self.storage_path)
43+
directory = os.path.join(base_directory, last_modified_str)
3744
return os.path.join(directory, filename)
3845

3946
except ImportError:
@@ -50,7 +57,10 @@ def __init__(self, data_dict):
5057
def get_path(self, id, filename=None):
5158
filepath = super(LocalResourceUpload, self).get_path(id)
5259
if self.resource and self.resource.get("last_modified", None):
53-
request_timestamp = toolkit.request.view_args.get("timestamp")
60+
if has_request_context():
61+
request_timestamp = toolkit.request.view_args.get("timestamp")
62+
else:
63+
request_timestamp = None
5464
last_modified_str = _get_stringified_date(self.resource["last_modified"])
5565
last_modified_str = request_timestamp or last_modified_str
5666
filepath = "-".join([filepath, last_modified_str])

0 commit comments

Comments
 (0)