本文整理汇总了Python中storymap.storage.save_json函数的典型用法代码示例。如果您正苦于以下问题:Python save_json函数的具体用法?Python save_json怎么用?Python save_json使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了save_json函数的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: storymap_create
def storymap_create(user):
"""Create a storymap"""
try:
title, data = _request_get_required('title', 'd')
id = _make_storymap_id(user, title)
key_prefix = storage.key_prefix(user['uid'], id)
content = json.loads(data)
storage.save_json(key_prefix+'draft.json', content)
user['storymaps'][id] = {
'id': id,
'title': title,
'draft_on': _utc_now(),
'published_on': ''
}
_user.save(user)
_write_embed_draft(key_prefix, user['storymaps'][id])
return jsonify({'id': id})
except Exception, e:
traceback.print_exc()
return jsonify({'error': str(e)})
开发者ID:TobMcG,项目名称:StoryMapJS,代码行数:26,代码来源:api.py
示例2: storymap_migrate
def storymap_migrate(user):
"""
Migrate a storymap
@title = storymap title
@url = storymap base url
@draft_on = ...
@published_on = ...
@file_list = json encoded list of file names
"""
try:
title, src_url, draft_on, file_list_json = _request_get_required(
'title', 'url', 'draft_on', 'file_list')
published_on = _request_get('published_on')
file_list = json.loads(file_list_json)
dst_id = _make_storymap_id(user, title)
dst_key_prefix = storage.key_prefix(user['uid'], dst_id)
dst_url = settings.AWS_STORAGE_BUCKET_URL+dst_key_prefix
dst_img_url = dst_url+'_images/'
re_img = re.compile(r'.*\.(png|gif|jpg|jpeg)$', re.I)
re_src = re.compile(r'%s' % src_url)
for file_name in file_list:
file_url = "%s%s" % (src_url, file_name)
if file_name.endswith('.json'):
key_name = storage.key_name(user['uid'], dst_id, file_name)
r = requests.get(file_url)
storage.save_json(key_name, re_src.sub(dst_img_url, r.text))
elif re_img.match(file_name):
key_name = storage.key_name(user['uid'], dst_id, '_images', file_name)
storage.save_from_url(key_name, file_url)
else:
continue # skip
user['storymaps'][dst_id] = {
'id': dst_id,
'title': title,
'draft_on': draft_on,
'published_on': published_on
}
_user.save(user)
_write_embed_draft(dst_key_prefix, user['storymaps'][dst_id])
if published_on:
_write_embed_published(dst_key_prefix, user['storymaps'][dst_id])
return jsonify(user['storymaps'][dst_id])
except Exception, e:
traceback.print_exc()
return jsonify({'error': str(e)})
开发者ID:TobMcG,项目名称:StoryMapJS,代码行数:53,代码来源:api.py
示例3: storymap_save
def storymap_save(user, id):
"""Save draft storymap"""
try:
data = _request_get_required('d')
key_name = storage.key_name(user['uid'], id, 'draft.json')
content = json.loads(data)
storage.save_json(key_name, content)
user['storymaps'][id]['draft_on'] = _utc_now()
_user.save(user)
return jsonify({'meta': user['storymaps'][id]})
except storage.StorageException, e:
traceback.print_exc()
return jsonify({'error': str(e), 'error_detail': e.detail})
开发者ID:TobMcG,项目名称:StoryMapJS,代码行数:16,代码来源:api.py
示例4: storymap_migrate
def storymap_migrate(user):
"""
Migrate a storymap
@title = storymap title
@url = storymap base url
@draft_on = ...
@published_on = ...
@file_list = json encoded list of file names
"""
try:
title, src_url, draft_on, file_list_json = _request_get_required("title", "url", "draft_on", "file_list")
published_on = _request_get("published_on")
file_list = json.loads(file_list_json)
dst_id = _make_storymap_id(user, title)
dst_key_prefix = storage.key_prefix(user["uid"], dst_id)
dst_url = settings.AWS_STORAGE_BUCKET_URL + dst_key_prefix
dst_img_url = dst_url + "_images/"
re_img = re.compile(r".*\.(png|gif|jpg|jpeg)$", re.I)
re_src = re.compile(r"%s" % src_url)
for file_name in file_list:
file_url = "%s%s" % (src_url, file_name)
if file_name.endswith(".json"):
key_name = storage.key_name(user["uid"], dst_id, file_name)
r = requests.get(file_url)
storage.save_json(key_name, re_src.sub(dst_img_url, r.text))
elif re_img.match(file_name):
key_name = storage.key_name(user["uid"], dst_id, "_images", file_name)
storage.save_from_url(key_name, file_url)
else:
continue # skip
user["storymaps"][dst_id] = {"id": dst_id, "title": title, "draft_on": draft_on, "published_on": published_on}
_user.save(user)
_write_embed_draft(dst_key_prefix, user["storymaps"][dst_id])
if published_on:
_write_embed_published(dst_key_prefix, user["storymaps"][dst_id])
return jsonify(user["storymaps"][dst_id])
except Exception, e:
traceback.print_exc()
return jsonify({"error": str(e)})
开发者ID:jorol,项目名称:StoryMapJS,代码行数:47,代码来源:api.py
示例5: storymap_copy
def storymap_copy(user, id):
"""
Copy storymap
@id = storymap to copy
@title = name of new copy
"""
try:
title = _request_get_required('title')
dst_id = _make_storymap_id(user, title)
src_key_prefix = storage.key_prefix(user['uid'], id)
dst_key_prefix = storage.key_prefix(user['uid'], dst_id)
src_re = re.compile(r'%s' % src_key_prefix)
src_key_list, more = storage.list_keys(src_key_prefix, 999, '')
for src_key in src_key_list:
file_name = src_key.name.split(src_key_prefix)[-1]
dst_key_name = "%s%s" % (dst_key_prefix, file_name)
if file_name.endswith('.json'):
json_string = src_key.get_contents_as_string()
storage.save_json(dst_key_name,
src_re.sub(dst_key_prefix, json_string))
else:
storage.copy_key(src_key.name, dst_key_name)
# Update meta
user['storymaps'][dst_id] = {
'id': dst_id,
'title': title,
'draft_on': user['storymaps'][id]['draft_on'],
'published_on': user['storymaps'][id]['published_on']
}
_user.save(user)
# Write new embed pages
_write_embed_draft(dst_key_prefix, user['storymaps'][dst_id])
if user['storymaps'][dst_id].get('published_on'):
_write_embed_published(dst_key_prefix, user['storymaps'][dst_id])
return jsonify(user['storymaps'][dst_id])
except Exception, e:
traceback.print_exc()
return jsonify({'error': str(e)})
开发者ID:TobMcG,项目名称:StoryMapJS,代码行数:45,代码来源:api.py
示例6: storymap_publish
def storymap_publish(user, id):
"""Save published storymap"""
try:
data = _request_get_required('d')
key_prefix = storage.key_prefix(user['uid'], id)
content = json.loads(data)
storage.save_json(key_prefix+'published.json', content)
user['storymaps'][id]['published_on'] = _utc_now()
_user.save(user)
_write_embed_published(key_prefix, user['storymaps'][id])
return jsonify({'meta': user['storymaps'][id]})
except storage.StorageException, e:
traceback.print_exc()
return jsonify({'error': str(e), 'error_detail': e.detail})
开发者ID:TobMcG,项目名称:StoryMapJS,代码行数:18,代码来源:api.py
示例7: storymap_publish
def storymap_publish(user, id):
"""Save published storymap"""
try:
data = _request_get_required("d")
key_prefix = storage.key_prefix(user["uid"], id)
content = json.loads(data)
storage.save_json(key_prefix + "published.json", content)
user["storymaps"][id]["published_on"] = _utc_now()
_user.save(user)
_write_embed_published(key_prefix, user["storymaps"][id])
return jsonify({"meta": user["storymaps"][id]})
except storage.StorageException, e:
traceback.print_exc()
return jsonify({"error": str(e), "error_detail": e.detail})
开发者ID:jorol,项目名称:StoryMapJS,代码行数:18,代码来源:api.py
示例8: storymap_copy
def storymap_copy(user, id):
"""
Copy storymap
@id = storymap to copy
@title = name of new copy
"""
try:
title = _request_get_required("title")
dst_id = _make_storymap_id(user, title)
src_key_prefix = storage.key_prefix(user["uid"], id)
dst_key_prefix = storage.key_prefix(user["uid"], dst_id)
src_re = re.compile(r"%s" % src_key_prefix)
src_key_list, more = storage.list_keys(src_key_prefix, 999, "")
for src_key in src_key_list:
file_name = src_key.name.split(src_key_prefix)[-1]
dst_key_name = "%s%s" % (dst_key_prefix, file_name)
if file_name.endswith(".json"):
json_string = src_key.get_contents_as_string()
storage.save_json(dst_key_name, src_re.sub(dst_key_prefix, json_string))
else:
storage.copy_key(src_key.name, dst_key_name)
# Update meta
user["storymaps"][dst_id] = {
"id": dst_id,
"title": title,
"draft_on": user["storymaps"][id]["draft_on"],
"published_on": user["storymaps"][id]["published_on"],
}
_user.save(user)
# Write new embed pages
_write_embed_draft(dst_key_prefix, user["storymaps"][dst_id])
if user["storymaps"][dst_id].get("published_on"):
_write_embed_published(dst_key_prefix, user["storymaps"][dst_id])
return jsonify(user["storymaps"][dst_id])
except Exception, e:
traceback.print_exc()
return jsonify({"error": str(e)})
开发者ID:jorol,项目名称:StoryMapJS,代码行数:44,代码来源:api.py
示例9: storymap_create
def storymap_create(user):
"""Create a storymap"""
try:
title, data = _request_get_required("title", "d")
id = _make_storymap_id(user, title)
key_prefix = storage.key_prefix(user["uid"], id)
content = json.loads(data)
storage.save_json(key_prefix + "draft.json", content)
user["storymaps"][id] = {"id": id, "title": title, "draft_on": _utc_now(), "published_on": ""}
_user.save(user)
_write_embed_draft(key_prefix, user["storymaps"][id])
return jsonify({"id": id})
except Exception, e:
traceback.print_exc()
return jsonify({"error": str(e)})
开发者ID:jorol,项目名称:StoryMapJS,代码行数:21,代码来源:api.py
注:本文中的storymap.storage.save_json函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论