Build website in_django

  • 4,318 views
Uploaded on

 

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
4,318
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
50
Comments
0
Likes
2

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. BUILD WEBSITE IN DJANGO WITH A SEARCH ENGINE IN THE END
  • 2. DJANGO? a Web development framework Written in Python Originally used in a News Site Now used in many place
  • 3. FEATURES It comes with ORM Administration Site Development Tools Templates Form validation Authentication Framework Comments Framework Feeds And many more
  • 4. ENOUGH TALKING LET GET TO WORK
  • 5. LADIES AND GENTLEMEN Start your project, by using the command django-admin startproject projectname You should see the content in the new folder __init__.py manage.py settings.py urls.py
  • 6. CONFIGURE IT A LITTLE The settings is in settings.py we start with the database find the similar template in settings.py ** show settings.py http://gist.github.com/376201
  • 7. A LITTLE MORE here find the line in settings.py find the same similar in settings and change it accordingly ** show template_dirs http://gist.github.com/376203
  • 8. PHEW..... Now we can start working, after we python manage.py startapp issues Now we really can start working btw you should see the following __init__.py models.py tests.py views.py
  • 9. WHILE WE AT IT Lets get a enable admin page in urls.py change the part in settings.py **show settings.py http://gist.github.com/376207 and urls.py **show urls.py http://gist.github.com/376208
  • 10. WHO WANT TO BE A MODEL? model.py == database table (almost) copy into models.py **shows issues models http://gist.github.com/376205
  • 11. SETUP A APP now save the models.py add application in settings.py this is just part of settings.py **show example http://gist.github.com/376207 create in issue/admin.py **show admin.py http://gist.github.com/376210
  • 12. SYNC IT!!!! Now we can create a database, python manage.py syncdb python mange.py runserver **show admin page
  • 13. FIRST SUBMIT A FORM One cool aspect of django is you can automate form generation, free with validation!!!! create this one in issue/forms.py ** show form.py http://gist.github.com/376290
  • 14. NOW TO VIEW THE APPS lets create django views add the following **show add view **show item view **show list view http://gist.github.com/376304
  • 15. TEMPLATING Django uses template to present to user, let start with a main template, and the template for app ** show base.html http://gist.github.com/376294 ** show add.html http://gist.github.com/376297 ** show view.html http://gist.github.com/376298 ** show list.html http://gist.github.com/376300
  • 16. URL.PY now lets create a url to point to the webapp create this one ** show issue/urls.py http://gist.github.com/376310 modify from the template ** show urls.py http://gist.github.com/376311 and demo
  • 17. EXTRA!!!! NOW A REVIEW OF HAYSTACK
  • 18. FINDING NEEDLE IN HAYSTACK Haystack is a search api for django, it support several backend, including solr, whoosh,
  • 19. A LITTLE SETUP(AGAIN) Let do a little setup git clone http://github.com/toastdriven/django-haystack.git **show changes in settings.py http://gist.github.com/376659 **show search_index http://gist.github.com/376662
  • 20. TELL HAYSTACK WHICH NEEDLE We create a search index ** show search index http://gist.github.com/376668 ** search document place on <template dir>/search/indexes/issue/issue_text.txt http://gist.github.com/376672
  • 21. NOW TELL SOLR Create solr index, and run index create a schema.xml for solr python manage.py build_solr_schema > schema.xml create search index python manage.py rebuild_index
  • 22. NOW CREATE A SEARCH SITE We just reuse the search view ** show urls.py add (r'^search/',include("haystack.urls")) and create a template ** show search/search.html http://gist.github.com/376685
  • 23. VOILA!!! Now we have a basic search. except haystack can do quite a lot, which is another story altogether