diff options
| author | Tom Christie | 2012-10-09 13:50:26 +0100 | 
|---|---|---|
| committer | Tom Christie | 2012-10-09 13:50:26 +0100 | 
| commit | 94401b43d2a1be81304ddcd91e3a97e7d2a42c4c (patch) | |
| tree | 99c6bfaf5fee014a794eddf56adcc16da2671e14 | |
| parent | 7c4d50f621a9c0668b8f8992751de6b2d7bcbe29 (diff) | |
| download | django-rest-framework-94401b43d2a1be81304ddcd91e3a97e7d2a42c4c.tar.bz2 | |
Flesh out quickstart guide and make some style tweaks
| -rw-r--r-- | docs/images/quickstart.png | bin | 0 -> 39050 bytes | |||
| -rw-r--r-- | docs/tutorial/quickstart.md | 39 | ||||
| -rwxr-xr-x | mkdocs.py | 25 | ||||
| -rw-r--r-- | rest_framework/static/rest_framework/css/default.css | 4 | ||||
| -rw-r--r-- | rest_framework/templates/rest_framework/base.html | 10 | 
5 files changed, 63 insertions, 15 deletions
| diff --git a/docs/images/quickstart.png b/docs/images/quickstart.pngBinary files differ new file mode 100644 index 00000000..5006d60f --- /dev/null +++ b/docs/images/quickstart.png diff --git a/docs/tutorial/quickstart.md b/docs/tutorial/quickstart.md index 62338160..cf5933ad 100644 --- a/docs/tutorial/quickstart.md +++ b/docs/tutorial/quickstart.md @@ -131,3 +131,42 @@ We'd also like to set a few global settings.  We'd like to turn on pagination, a      }  Okay, that's us done. + +--- + +## Testing our API + +We can now access our API, both from the command-line, using tools like `curl`... + +    bash: curl -H 'Accept: application/json; indent=4' -u admin:password http://127.0.0.1:8000/users/  +    { +        "count": 2,  +        "next": null,  +        "previous": null,  +        "results": [ +            { +                "email": "admin@example.com",  +                "groups": [],  +                "url": "http://127.0.0.1:8000/users/1/",  +                "username": "admin" +            },  +            { +                "email": "tom@example.com",  +                "groups": [],  +                "url": "http://127.0.0.1:8000/users/2/",  +                "username": "tom" +            } +        ] +    } + +Or directly through the browser... + +![Quick start image][image] + +Great, that was easy! + +If you want to get a more in depth understanding of how REST framework fits together head on over to [the tutorial][tutorial], or start browsing the [API guide][guide]. + +[image]: ../images/quickstart.png +[tutorial]: 1-serialization.md +[guide]: ../#api-guide
\ No newline at end of file @@ -37,12 +37,25 @@ for static in ['css', 'js', 'img']:      shutil.copytree(source, target)  for (dirpath, dirnames, filenames) in os.walk(docs_dir): +    relative_dir = dirpath.replace(docs_dir, '').lstrip(os.path.sep) +    build_dir = os.path.join(html_dir, relative_dir) +    if not os.path.exists(build_dir): +        os.makedirs(build_dir) +      for filename in filenames: -        if not filename.endswith('.md'): +        path = os.path.join(dirpath, filename) + +        if filename.endswith('.png'): +            output_path = os.path.join(build_dir, filename) +            shutil.copy(path, output_path) +            continue +        elif not filename.endswith('.md'):              continue +        output_path = os.path.join(build_dir, filename[:-3] + '.html') +          toc = '' -        text = open(os.path.join(dirpath, filename), 'r').read().decode('utf-8') +        text = open(path, 'r').read().decode('utf-8')          for line in text.splitlines():              if line.startswith('# '):                  title = line[2:].strip() @@ -60,16 +73,10 @@ for (dirpath, dirnames, filenames) in os.walk(docs_dir):          content = markdown.markdown(text, ['headerid']) -        relative_dir = dirpath.replace(docs_dir, '').lstrip(os.path.sep) -        build_dir = os.path.join(html_dir, relative_dir) -        build_file = os.path.join(build_dir, filename[:-3] + '.html') - -        if not os.path.exists(build_dir): -            os.makedirs(build_dir)          output = page.replace('{{ content }}', content).replace('{{ toc }}', toc).replace('{{ base_url }}', base_url).replace('{{ suffix }}', suffix).replace('{{ index }}', index)          output = output.replace('{{ page_id }}', filename[:-3])          output = re.sub(r'a href="([^"]*)\.md"', r'a href="\1%s"' % suffix, output)          output = re.sub(r'<pre><code>:::bash', r'<pre class="prettyprint lang-bsh">', output)          output = re.sub(r'<pre>', r'<pre class="prettyprint lang-py">', output)          output = re.sub(r'<a class="github" href="([^"]*)"></a>', code_label, output) -        open(build_file, 'w').write(output.encode('utf-8')) +        open(output_path, 'w').write(output.encode('utf-8')) diff --git a/rest_framework/static/rest_framework/css/default.css b/rest_framework/static/rest_framework/css/default.css index 4d61ac8f..739b9300 100644 --- a/rest_framework/static/rest_framework/css/default.css +++ b/rest_framework/static/rest_framework/css/default.css @@ -19,6 +19,10 @@ h2, h3 {      padding-right: 0.25em;  } +.version { +  font-size: 70%; +} +  .format-option {      font-family: Menlo, Consolas, "Andale Mono", "Lucida Console", monospace;  } diff --git a/rest_framework/templates/rest_framework/base.html b/rest_framework/templates/rest_framework/base.html index d26cb8f4..5ac6ef67 100644 --- a/rest_framework/templates/rest_framework/base.html +++ b/rest_framework/templates/rest_framework/base.html @@ -39,7 +39,7 @@                          {% if user.is_authenticated %}                              <li class="dropdown">                                  <a href="#" class="dropdown-toggle" data-toggle="dropdown"> -                                    Logged in as {{ user }} +                                    {{ user }}                                      <b class="caret"></b>                                  </a>                                  <ul class="dropdown-menu"> @@ -128,7 +128,6 @@                  <div class="well">                      <form action="{{ request.get_full_path }}" method="POST" {% if post_form.is_multipart %}enctype="multipart/form-data"{% endif %} class="form-horizontal">                          <fieldset> -                            <h2>POST: {{ name }}</h2>                              {% csrf_token %}                              {{ post_form.non_field_errors }}                              {% for field in post_form %} @@ -153,7 +152,6 @@                  <div class="well">                      <form action="{{ request.get_full_path }}" method="POST" {% if put_form.is_multipart %}enctype="multipart/form-data"{% endif %} class="form-horizontal">                          <fieldset> -                            <h2>PUT: {{ name }}</h2>                              <input type="hidden" name="{{ api_settings.FORM_METHOD_OVERRIDE }}" value="PUT" />                              {% csrf_token %}                              {{ put_form.non_field_errors }} @@ -191,9 +189,9 @@      </div><!-- ./wrapper -->      {% block footer %} -    <div id="footer"> -        <a class="powered-by" href='http://django-rest-framework.org'>Django REST framework</a> <span class="version">{{ version }}</span> -    </div> +    <!--<div id="footer"> +        <a class="powered-by" href='http://django-rest-framework.org'>Django REST framework</a> +    </div>-->      {% endblock %}      {% block script %} | 
