mirror of
https://github.com/encode/django-rest-framework.git
synced 2025-02-18 04:20:53 +03:00
Minor changes to examples and docs
This commit is contained in:
parent
f6e534321a
commit
8a470f031e
|
@ -13,6 +13,16 @@ Features:
|
||||||
* Optional support for forms as input validation.
|
* Optional support for forms as input validation.
|
||||||
* Modular architecture - Easy to extend and modify.
|
* Modular architecture - Easy to extend and modify.
|
||||||
|
|
||||||
|
Requirements
|
||||||
|
------------
|
||||||
|
|
||||||
|
* Python 2.6
|
||||||
|
* Django 1.2
|
||||||
|
|
||||||
|
.. note::
|
||||||
|
|
||||||
|
Support for a wider range of Python & Django versions is planned, but right now django-rest-framework is only tested against these versions.
|
||||||
|
|
||||||
Installation & Setup
|
Installation & Setup
|
||||||
--------------------
|
--------------------
|
||||||
|
|
||||||
|
|
|
@ -8,6 +8,16 @@ import os
|
||||||
import uuid
|
import uuid
|
||||||
|
|
||||||
OBJECT_STORE_DIR = os.path.join(settings.MEDIA_ROOT, 'objectstore')
|
OBJECT_STORE_DIR = os.path.join(settings.MEDIA_ROOT, 'objectstore')
|
||||||
|
MAX_FILES = 20
|
||||||
|
|
||||||
|
|
||||||
|
def remove_oldest_files(dir, max_files):
|
||||||
|
"""Remove the oldest files in a directory 'dir', leaving at most 'max_files' remaining.
|
||||||
|
We use this to limit the number of resources in the sandbox."""
|
||||||
|
filepaths = [os.path.join(dir, file) for file in os.listdir(dir)]
|
||||||
|
ctime_sorted_paths = [item[0] for item in sorted([(path, os.path.getctime(path)) for path in filepaths],
|
||||||
|
key=operator.itemgetter(1), reverse=True)]
|
||||||
|
[os.remove(path) for path in ctime_sorted_paths[max_files:]]
|
||||||
|
|
||||||
|
|
||||||
class ObjectStoreRoot(Resource):
|
class ObjectStoreRoot(Resource):
|
||||||
|
@ -25,6 +35,7 @@ class ObjectStoreRoot(Resource):
|
||||||
key = str(uuid.uuid1())
|
key = str(uuid.uuid1())
|
||||||
pathname = os.path.join(OBJECT_STORE_DIR, key)
|
pathname = os.path.join(OBJECT_STORE_DIR, key)
|
||||||
pickle.dump(content, open(pathname, 'wb'))
|
pickle.dump(content, open(pathname, 'wb'))
|
||||||
|
remove_oldest_files(OBJECT_STORE_DIR, MAX_FILES)
|
||||||
return Response(status.HTTP_201_CREATED, content, {'Location': self.reverse(StoredObject, key=key)})
|
return Response(status.HTTP_201_CREATED, content, {'Location': self.reverse(StoredObject, key=key)})
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -16,10 +16,11 @@ import operator
|
||||||
|
|
||||||
# We need somewhere to store the code that we highlight
|
# We need somewhere to store the code that we highlight
|
||||||
HIGHLIGHTED_CODE_DIR = os.path.join(settings.MEDIA_ROOT, 'pygments')
|
HIGHLIGHTED_CODE_DIR = os.path.join(settings.MEDIA_ROOT, 'pygments')
|
||||||
MAX_FILES = 5
|
MAX_FILES = 20
|
||||||
|
|
||||||
def remove_oldest_files(dir, max_files):
|
def remove_oldest_files(dir, max_files):
|
||||||
"""Remove the oldest files in a directory 'dir', leaving at most 'max_files' remaining"""
|
"""Remove the oldest files in a directory 'dir', leaving at most 'max_files' remaining.
|
||||||
|
We use this to limit the number of resources in the sandbox."""
|
||||||
filepaths = [os.path.join(dir, file) for file in os.listdir(dir)]
|
filepaths = [os.path.join(dir, file) for file in os.listdir(dir)]
|
||||||
ctime_sorted_paths = [item[0] for item in sorted([(path, os.path.getctime(path)) for path in filepaths],
|
ctime_sorted_paths = [item[0] for item in sorted([(path, os.path.getctime(path)) for path in filepaths],
|
||||||
key=operator.itemgetter(1), reverse=True)]
|
key=operator.itemgetter(1), reverse=True)]
|
||||||
|
@ -74,4 +75,10 @@ class PygmentsInstance(Resource):
|
||||||
return Resource(status.HTTP_404_NOT_FOUND)
|
return Resource(status.HTTP_404_NOT_FOUND)
|
||||||
return open(pathname, 'r').read()
|
return open(pathname, 'r').read()
|
||||||
|
|
||||||
|
def delete(self, request, auth, unique_id):
|
||||||
|
"""Delete the highlighted snippet."""
|
||||||
|
pathname = os.path.join(HIGHLIGHTED_CODE_DIR, unique_id)
|
||||||
|
if not os.path.exists(pathname):
|
||||||
|
return Resource(status.HTTP_404_NOT_FOUND)
|
||||||
|
return os.remove(pathname)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user