├── .gitignore ├── AppendixE_solutions.pdf ├── LICENSE ├── README.md ├── code ├── ch02a_rocket │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── manage.py │ │ └── requirements.txt ├── ch02b_credits │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ └── requirements.txt ├── ch02c_exercises │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ └── requirements.txt ├── ch03a_templates │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── requirements.txt │ │ └── templates │ │ ├── experiment.html │ │ └── news.html ├── ch03b_inherit │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── requirements.txt │ │ └── templates │ │ ├── base.html │ │ ├── experiment.html │ │ ├── news.html │ │ └── news2.html ├── ch03c_exercises │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── requirements.txt │ │ └── templates │ │ ├── adv_news.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── experiment.html │ │ ├── news.html │ │ └── news2.html ├── ch04a_bands │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── requirements.txt │ │ └── templates │ │ ├── adv_news.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── experiment.html │ │ ├── news.html │ │ └── news2.html ├── ch04b_query │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── requirements.txt │ │ └── templates │ │ ├── adv_news.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── experiment.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ └── news2.html ├── ch04c_page │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── requirements.txt │ │ └── templates │ │ ├── adv_news.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── experiment.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ └── news2.html ├── ch04d_relationships │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── requirements.txt │ │ └── templates │ │ ├── adv_news.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── experiment.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ └── news2.html ├── ch04e_exercises │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── requirements.txt │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── experiment.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ └── venues.html ├── ch05a_admin │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── requirements.txt │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── experiment.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ └── venues.html ├── ch05b_customize │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── requirements.txt │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── experiment.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ └── venues.html ├── ch05c_search │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── requirements.txt │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── experiment.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ └── venues.html ├── ch05d_filter │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── requirements.txt │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── experiment.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ └── venues.html ├── ch05e_band │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ ├── 0004_alter_musician_options.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── requirements.txt │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── experiment.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ └── venues.html ├── ch05f_exercises │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ ├── 0004_alter_band_options_alter_musician_options_and_more.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── requirements.txt │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── experiment.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ └── venues.html ├── ch06a_userprofile │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ ├── 0004_alter_band_options_alter_musician_options_and_more.py │ │ │ ├── 0005_alter_userprofile_musician_profiles_and_more.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── requirements.txt │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── experiment.html │ │ ├── general.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ ├── registration │ │ ├── login.html │ │ ├── password_reset_complete.html │ │ ├── password_reset_confirm.html │ │ ├── password_reset_done.html │ │ ├── password_reset_email.html │ │ └── password_reset_form.html │ │ └── venues.html ├── ch06b_signal │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ ├── 0004_alter_band_options_alter_musician_options_and_more.py │ │ │ ├── 0005_alter_userprofile_musician_profiles_and_more.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── requirements.txt │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── experiment.html │ │ ├── general.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ ├── registration │ │ ├── login.html │ │ ├── password_reset_complete.html │ │ ├── password_reset_confirm.html │ │ ├── password_reset_done.html │ │ ├── password_reset_email.html │ │ └── password_reset_form.html │ │ └── venues.html ├── ch06c_exercises │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ ├── 0004_alter_band_options_alter_musician_options_and_more.py │ │ │ ├── 0005_alter_userprofile_musician_profiles_and_more.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── requirements.txt │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── experiment.html │ │ ├── general.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ ├── registration │ │ ├── login.html │ │ ├── password_reset_complete.html │ │ ├── password_reset_confirm.html │ │ ├── password_reset_done.html │ │ ├── password_reset_email.html │ │ └── password_reset_form.html │ │ └── venues.html ├── ch07a_forms │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ ├── 0004_alter_band_options_alter_musician_options_and_more.py │ │ │ ├── 0005_alter_userprofile_musician_profiles_and_more.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── content │ │ ├── __init__.py │ │ ├── apps.py │ │ ├── forms.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_alter_seekingad_options.py │ │ │ ├── 0003_delete_seekingad.py │ │ │ └── __init__.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── requirements.txt │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── comment.html │ │ ├── experiment.html │ │ ├── general.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ ├── registration │ │ ├── login.html │ │ ├── password_reset_complete.html │ │ ├── password_reset_confirm.html │ │ ├── password_reset_done.html │ │ ├── password_reset_email.html │ │ └── password_reset_form.html │ │ └── venues.html ├── ch07b_modelforms │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ ├── 0004_alter_band_options_alter_musician_options_and_more.py │ │ │ ├── 0005_alter_userprofile_musician_profiles_and_more.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── content │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── forms.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_alter_seekingad_options.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── requirements.txt │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── comment.html │ │ ├── experiment.html │ │ ├── general.html │ │ ├── list_ads.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ ├── registration │ │ ├── login.html │ │ ├── password_reset_complete.html │ │ ├── password_reset_confirm.html │ │ ├── password_reset_done.html │ │ ├── password_reset_email.html │ │ └── password_reset_form.html │ │ ├── seeking_ad.html │ │ └── venues.html ├── ch07c_editingforms │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ ├── 0004_alter_band_options_alter_musician_options_and_more.py │ │ │ ├── 0005_alter_userprofile_musician_profiles_and_more.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── content │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── forms.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_alter_seekingad_options.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── requirements.txt │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── comment.html │ │ ├── experiment.html │ │ ├── general.html │ │ ├── list_ads.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ ├── registration │ │ ├── login.html │ │ ├── password_reset_complete.html │ │ ├── password_reset_confirm.html │ │ ├── password_reset_done.html │ │ ├── password_reset_email.html │ │ └── password_reset_form.html │ │ ├── seeking_ad.html │ │ └── venues.html ├── ch07d_staticfiles │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ ├── 0004_alter_band_options_alter_musician_options_and_more.py │ │ │ ├── 0005_alter_userprofile_musician_profiles_and_more.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── content │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── forms.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_alter_seekingad_options.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── requirements.txt │ │ ├── static │ │ └── img │ │ │ └── logo.png │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── comment.html │ │ ├── experiment.html │ │ ├── general.html │ │ ├── home.html │ │ ├── list_ads.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ ├── registration │ │ ├── login.html │ │ ├── password_reset_complete.html │ │ ├── password_reset_confirm.html │ │ ├── password_reset_done.html │ │ ├── password_reset_email.html │ │ └── password_reset_form.html │ │ ├── seeking_ad.html │ │ └── venues.html ├── ch07e_uploads │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── forms.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ ├── 0004_alter_band_options_alter_musician_options_and_more.py │ │ │ ├── 0005_alter_userprofile_musician_profiles_and_more.py │ │ │ ├── 0006_venue_description_venue_picture.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── content │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── forms.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_alter_seekingad_options.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── requirements.txt │ │ ├── static │ │ └── img │ │ │ └── logo.png │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── comment.html │ │ ├── edit_venue.html │ │ ├── experiment.html │ │ ├── general.html │ │ ├── home.html │ │ ├── list_ads.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ ├── registration │ │ ├── login.html │ │ ├── password_reset_complete.html │ │ ├── password_reset_confirm.html │ │ ├── password_reset_done.html │ │ ├── password_reset_email.html │ │ └── password_reset_form.html │ │ ├── seeking_ad.html │ │ └── venues.html ├── ch07f_exercises │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── forms.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ ├── 0004_alter_band_options_alter_musician_options_and_more.py │ │ │ ├── 0005_alter_userprofile_musician_profiles_and_more.py │ │ │ ├── 0006_venue_description_venue_picture.py │ │ │ ├── 0007_musician_description_musician_picture.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── content │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── forms.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_alter_seekingad_options.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── requirements.txt │ │ ├── static │ │ └── img │ │ │ └── logo.png │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── comment.html │ │ ├── edit_musician.html │ │ ├── edit_venue.html │ │ ├── experiment.html │ │ ├── general.html │ │ ├── home.html │ │ ├── list_ads.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ ├── registration │ │ ├── login.html │ │ ├── password_reset_complete.html │ │ ├── password_reset_confirm.html │ │ ├── password_reset_done.html │ │ ├── password_reset_email.html │ │ └── password_reset_form.html │ │ ├── seeking_ad.html │ │ └── venues.html ├── ch08a_tests │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── forms.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ ├── 0004_alter_band_options_alter_musician_options_and_more.py │ │ │ ├── 0005_alter_userprofile_musician_profiles_and_more.py │ │ │ ├── 0006_venue_description_venue_picture.py │ │ │ ├── 0007_musician_description_musician_picture.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── content │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── forms.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_alter_seekingad_options.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── requirements.txt │ │ ├── static │ │ └── img │ │ │ └── logo.png │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── comment.html │ │ ├── edit_musician.html │ │ ├── edit_venue.html │ │ ├── experiment.html │ │ ├── general.html │ │ ├── home.html │ │ ├── list_ads.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ ├── registration │ │ ├── login.html │ │ ├── password_reset_complete.html │ │ ├── password_reset_confirm.html │ │ ├── password_reset_done.html │ │ ├── password_reset_email.html │ │ └── password_reset_form.html │ │ ├── seeking_ad.html │ │ └── venues.html ├── ch08b_exercises │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── forms.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ ├── 0004_alter_band_options_alter_musician_options_and_more.py │ │ │ ├── 0005_alter_userprofile_musician_profiles_and_more.py │ │ │ ├── 0006_venue_description_venue_picture.py │ │ │ ├── 0007_musician_description_musician_picture.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── content │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── forms.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_alter_seekingad_options.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── requirements.txt │ │ ├── static │ │ └── img │ │ │ └── logo.png │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── comment.html │ │ ├── edit_musician.html │ │ ├── edit_venue.html │ │ ├── experiment.html │ │ ├── general.html │ │ ├── home.html │ │ ├── list_ads.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ ├── registration │ │ ├── login.html │ │ ├── password_reset_complete.html │ │ ├── password_reset_confirm.html │ │ ├── password_reset_done.html │ │ ├── password_reset_email.html │ │ └── password_reset_form.html │ │ ├── seeking_ad.html │ │ └── venues.html ├── ch09a_commands │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── forms.py │ │ ├── management │ │ │ ├── __init__.py │ │ │ └── commands │ │ │ │ ├── __init__.py │ │ │ │ └── musicians.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ ├── 0004_alter_band_options_alter_musician_options_and_more.py │ │ │ ├── 0005_alter_userprofile_musician_profiles_and_more.py │ │ │ ├── 0006_venue_description_venue_picture.py │ │ │ ├── 0007_musician_description_musician_picture.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── content │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── forms.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_alter_seekingad_options.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── requirements.txt │ │ ├── static │ │ └── img │ │ │ └── logo.png │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── comment.html │ │ ├── edit_musician.html │ │ ├── edit_venue.html │ │ ├── experiment.html │ │ ├── general.html │ │ ├── home.html │ │ ├── list_ads.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ ├── registration │ │ ├── login.html │ │ ├── password_reset_complete.html │ │ ├── password_reset_confirm.html │ │ ├── password_reset_done.html │ │ ├── password_reset_email.html │ │ └── password_reset_form.html │ │ ├── seeking_ad.html │ │ └── venues.html ├── ch09b_options │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── forms.py │ │ ├── management │ │ │ ├── __init__.py │ │ │ └── commands │ │ │ │ ├── __init__.py │ │ │ │ └── musicians.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ ├── 0004_alter_band_options_alter_musician_options_and_more.py │ │ │ ├── 0005_alter_userprofile_musician_profiles_and_more.py │ │ │ ├── 0006_venue_description_venue_picture.py │ │ │ ├── 0007_musician_description_musician_picture.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── content │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── forms.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_alter_seekingad_options.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── requirements.txt │ │ ├── static │ │ └── img │ │ │ └── logo.png │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── comment.html │ │ ├── edit_musician.html │ │ ├── edit_venue.html │ │ ├── experiment.html │ │ ├── general.html │ │ ├── home.html │ │ ├── list_ads.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ ├── registration │ │ ├── login.html │ │ ├── password_reset_complete.html │ │ ├── password_reset_confirm.html │ │ ├── password_reset_done.html │ │ ├── password_reset_email.html │ │ └── password_reset_form.html │ │ ├── seeking_ad.html │ │ └── venues.html ├── ch09c_exercises │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── forms.py │ │ ├── management │ │ │ ├── __init__.py │ │ │ └── commands │ │ │ │ ├── __init__.py │ │ │ │ ├── cleanup.py │ │ │ │ ├── musicians.py │ │ │ │ └── venues.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ ├── 0004_alter_band_options_alter_musician_options_and_more.py │ │ │ ├── 0005_alter_userprofile_musician_profiles_and_more.py │ │ │ ├── 0006_venue_description_venue_picture.py │ │ │ ├── 0007_musician_description_musician_picture.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── content │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── forms.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_alter_seekingad_options.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── requirements.txt │ │ ├── static │ │ └── img │ │ │ └── logo.png │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── comment.html │ │ ├── edit_musician.html │ │ ├── edit_venue.html │ │ ├── experiment.html │ │ ├── general.html │ │ ├── home.html │ │ ├── list_ads.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ ├── registration │ │ ├── login.html │ │ ├── password_reset_complete.html │ │ ├── password_reset_confirm.html │ │ ├── password_reset_done.html │ │ ├── password_reset_email.html │ │ └── password_reset_form.html │ │ ├── seeking_ad.html │ │ └── venues.html ├── ch10a_promoter │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── forms.py │ │ ├── management │ │ │ ├── __init__.py │ │ │ └── commands │ │ │ │ ├── __init__.py │ │ │ │ ├── cleanup.py │ │ │ │ ├── musicians.py │ │ │ │ └── venues.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ ├── 0004_alter_band_options_alter_musician_options_and_more.py │ │ │ ├── 0005_alter_userprofile_musician_profiles_and_more.py │ │ │ ├── 0006_venue_description_venue_picture.py │ │ │ ├── 0007_musician_description_musician_picture.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── content │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── forms.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_alter_seekingad_options.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── promoters │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── requirements.txt │ │ ├── static │ │ └── img │ │ │ └── logo.png │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── comment.html │ │ ├── edit_musician.html │ │ ├── edit_venue.html │ │ ├── experiment.html │ │ ├── general.html │ │ ├── home.html │ │ ├── list_ads.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ ├── registration │ │ ├── login.html │ │ ├── password_reset_complete.html │ │ ├── password_reset_confirm.html │ │ ├── password_reset_done.html │ │ ├── password_reset_email.html │ │ └── password_reset_form.html │ │ ├── seeking_ad.html │ │ └── venues.html ├── ch10b_famous │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── forms.py │ │ ├── management │ │ │ ├── __init__.py │ │ │ └── commands │ │ │ │ ├── __init__.py │ │ │ │ ├── cleanup.py │ │ │ │ ├── musicians.py │ │ │ │ └── venues.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ ├── 0004_alter_band_options_alter_musician_options_and_more.py │ │ │ ├── 0005_alter_userprofile_musician_profiles_and_more.py │ │ │ ├── 0006_venue_description_venue_picture.py │ │ │ ├── 0007_musician_description_musician_picture.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── content │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── forms.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_alter_seekingad_options.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── promoters │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_promoter_famous_for.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── requirements.txt │ │ ├── static │ │ └── img │ │ │ └── logo.png │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── comment.html │ │ ├── edit_musician.html │ │ ├── edit_venue.html │ │ ├── experiment.html │ │ ├── general.html │ │ ├── home.html │ │ ├── list_ads.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ ├── registration │ │ ├── login.html │ │ ├── password_reset_complete.html │ │ ├── password_reset_confirm.html │ │ ├── password_reset_done.html │ │ ├── password_reset_email.html │ │ └── password_reset_form.html │ │ ├── seeking_ad.html │ │ └── venues.html ├── ch10c_fullname │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── forms.py │ │ ├── management │ │ │ ├── __init__.py │ │ │ └── commands │ │ │ │ ├── __init__.py │ │ │ │ ├── cleanup.py │ │ │ │ ├── musicians.py │ │ │ │ └── venues.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ ├── 0004_alter_band_options_alter_musician_options_and_more.py │ │ │ ├── 0005_alter_userprofile_musician_profiles_and_more.py │ │ │ ├── 0006_venue_description_venue_picture.py │ │ │ ├── 0007_musician_description_musician_picture.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── content │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── forms.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_alter_seekingad_options.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── promoters │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_promoter_famous_for.py │ │ │ ├── 0003_promoter_common_name_promoter_full_name.py │ │ │ ├── 0004_data_fullname.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── requirements.txt │ │ ├── static │ │ └── img │ │ │ └── logo.png │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── comment.html │ │ ├── edit_musician.html │ │ ├── edit_venue.html │ │ ├── experiment.html │ │ ├── general.html │ │ ├── home.html │ │ ├── list_ads.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ ├── registration │ │ ├── login.html │ │ ├── password_reset_complete.html │ │ ├── password_reset_confirm.html │ │ ├── password_reset_done.html │ │ ├── password_reset_email.html │ │ └── password_reset_form.html │ │ ├── seeking_ad.html │ │ └── venues.html ├── ch10d_onlyfull │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── forms.py │ │ ├── management │ │ │ ├── __init__.py │ │ │ └── commands │ │ │ │ ├── __init__.py │ │ │ │ ├── cleanup.py │ │ │ │ ├── musicians.py │ │ │ │ └── venues.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ ├── 0004_alter_band_options_alter_musician_options_and_more.py │ │ │ ├── 0005_alter_userprofile_musician_profiles_and_more.py │ │ │ ├── 0006_venue_description_venue_picture.py │ │ │ ├── 0007_musician_description_musician_picture.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── content │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── forms.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_alter_seekingad_options.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── promoters │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_promoter_famous_for.py │ │ │ ├── 0003_promoter_common_name_promoter_full_name.py │ │ │ ├── 0004_data_fullname.py │ │ │ ├── 0005_remove_promoter_first_name_remove_promoter_last_name.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── requirements.txt │ │ ├── static │ │ └── img │ │ │ └── logo.png │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── comment.html │ │ ├── edit_musician.html │ │ ├── edit_venue.html │ │ ├── experiment.html │ │ ├── general.html │ │ ├── home.html │ │ ├── list_ads.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ ├── registration │ │ ├── login.html │ │ ├── password_reset_complete.html │ │ ├── password_reset_confirm.html │ │ ├── password_reset_done.html │ │ ├── password_reset_email.html │ │ └── password_reset_form.html │ │ ├── seeking_ad.html │ │ └── venues.html ├── ch10e_birth │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── forms.py │ │ ├── management │ │ │ ├── __init__.py │ │ │ └── commands │ │ │ │ ├── __init__.py │ │ │ │ ├── cleanup.py │ │ │ │ ├── musicians.py │ │ │ │ └── venues.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ ├── 0004_alter_band_options_alter_musician_options_and_more.py │ │ │ ├── 0005_alter_userprofile_musician_profiles_and_more.py │ │ │ ├── 0006_venue_description_venue_picture.py │ │ │ ├── 0007_musician_description_musician_picture.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── content │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── forms.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_alter_seekingad_options.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── promoters │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_promoter_famous_for.py │ │ │ ├── 0003_promoter_common_name_promoter_full_name.py │ │ │ ├── 0004_data_fullname.py │ │ │ ├── 0005_remove_promoter_first_name_remove_promoter_last_name.py │ │ │ ├── 0006_promoter_birth.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── requirements.txt │ │ ├── static │ │ └── img │ │ │ └── logo.png │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── comment.html │ │ ├── edit_musician.html │ │ ├── edit_venue.html │ │ ├── experiment.html │ │ ├── general.html │ │ ├── home.html │ │ ├── list_ads.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ ├── registration │ │ ├── login.html │ │ ├── password_reset_complete.html │ │ ├── password_reset_confirm.html │ │ ├── password_reset_done.html │ │ ├── password_reset_email.html │ │ └── password_reset_form.html │ │ ├── seeking_ad.html │ │ └── venues.html ├── ch10f_death │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── forms.py │ │ ├── management │ │ │ ├── __init__.py │ │ │ └── commands │ │ │ │ ├── __init__.py │ │ │ │ ├── cleanup.py │ │ │ │ ├── musicians.py │ │ │ │ └── venues.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ ├── 0004_alter_band_options_alter_musician_options_and_more.py │ │ │ ├── 0005_alter_userprofile_musician_profiles_and_more.py │ │ │ ├── 0006_venue_description_venue_picture.py │ │ │ ├── 0007_musician_description_musician_picture.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── content │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── forms.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_alter_seekingad_options.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── promoters │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_promoter_famous_for.py │ │ │ ├── 0003_promoter_common_name_promoter_full_name.py │ │ │ ├── 0004_data_fullname.py │ │ │ ├── 0005_remove_promoter_first_name_remove_promoter_last_name.py │ │ │ ├── 0006_promoter_birth.py │ │ │ ├── 0007_promoter_death.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── requirements.txt │ │ ├── static │ │ └── img │ │ │ └── logo.png │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── comment.html │ │ ├── edit_musician.html │ │ ├── edit_venue.html │ │ ├── experiment.html │ │ ├── general.html │ │ ├── home.html │ │ ├── list_ads.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ ├── registration │ │ ├── login.html │ │ ├── password_reset_complete.html │ │ ├── password_reset_confirm.html │ │ ├── password_reset_done.html │ │ ├── password_reset_email.html │ │ └── password_reset_form.html │ │ ├── seeking_ad.html │ │ └── venues.html ├── ch10g_squash │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── forms.py │ │ ├── management │ │ │ ├── __init__.py │ │ │ └── commands │ │ │ │ ├── __init__.py │ │ │ │ ├── cleanup.py │ │ │ │ ├── musicians.py │ │ │ │ └── venues.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ ├── 0004_alter_band_options_alter_musician_options_and_more.py │ │ │ ├── 0005_alter_userprofile_musician_profiles_and_more.py │ │ │ ├── 0006_venue_description_venue_picture.py │ │ │ ├── 0007_musician_description_musician_picture.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── content │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── forms.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_alter_seekingad_options.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── promoters │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_promoter_famous_for.py │ │ │ ├── 0003_promoter_common_name_promoter_full_name.py │ │ │ ├── 0004_data_fullname.py │ │ │ ├── 0005_remove_promoter_first_name_remove_promoter_last_name.py │ │ │ ├── 0006_promoter_birth.py │ │ │ ├── 0006_promoter_birth_squashed_0007_promoter_death.py │ │ │ ├── 0007_promoter_death.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── requirements.txt │ │ ├── static │ │ └── img │ │ │ └── logo.png │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── comment.html │ │ ├── edit_musician.html │ │ ├── edit_venue.html │ │ ├── experiment.html │ │ ├── general.html │ │ ├── home.html │ │ ├── list_ads.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ ├── registration │ │ ├── login.html │ │ ├── password_reset_complete.html │ │ ├── password_reset_confirm.html │ │ ├── password_reset_done.html │ │ ├── password_reset_email.html │ │ └── password_reset_form.html │ │ ├── seeking_ad.html │ │ └── venues.html ├── ch10h_exercises │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── forms.py │ │ ├── management │ │ │ ├── __init__.py │ │ │ └── commands │ │ │ │ ├── __init__.py │ │ │ │ ├── cleanup.py │ │ │ │ ├── musicians.py │ │ │ │ └── venues.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ ├── 0004_alter_band_options_alter_musician_options_and_more.py │ │ │ ├── 0005_alter_userprofile_musician_profiles_and_more.py │ │ │ ├── 0006_venue_description_venue_picture.py │ │ │ ├── 0007_musician_description_musician_picture.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── content │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── forms.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_alter_seekingad_options.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── promoters │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ └── promoters.json │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_promoter_famous_for.py │ │ │ ├── 0003_promoter_common_name_promoter_full_name.py │ │ │ ├── 0004_data_fullname.py │ │ │ ├── 0005_remove_promoter_first_name_remove_promoter_last_name.py │ │ │ ├── 0006_promoter_birth.py │ │ │ ├── 0006_promoter_birth_squashed_0007_promoter_death.py │ │ │ ├── 0007_promoter_death.py │ │ │ ├── 0008_promoter_street_address.py │ │ │ ├── 0008_promoter_street_address_squashed_0009_promoter_country_code_promoter_postal_zip_and_more.py │ │ │ ├── 0009_promoter_country_code_promoter_postal_zip_and_more.py │ │ │ ├── 0010_promoter_address.py │ │ │ ├── 0011_data_address.py │ │ │ ├── 0012_remove_promoter_city_remove_promoter_country_code_and_more.py │ │ │ ├── 0013_alter_promoter_address.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── requirements.txt │ │ ├── static │ │ └── img │ │ │ └── logo.png │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── comment.html │ │ ├── edit_musician.html │ │ ├── edit_venue.html │ │ ├── experiment.html │ │ ├── general.html │ │ ├── home.html │ │ ├── list_ads.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ ├── registration │ │ ├── login.html │ │ ├── password_reset_complete.html │ │ ├── password_reset_confirm.html │ │ ├── password_reset_done.html │ │ ├── password_reset_email.html │ │ └── password_reset_form.html │ │ ├── seeking_ad.html │ │ └── venues.html ├── ch11a_ninja │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── api_auth.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── api.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── forms.py │ │ ├── management │ │ │ ├── __init__.py │ │ │ └── commands │ │ │ │ ├── __init__.py │ │ │ │ ├── cleanup.py │ │ │ │ ├── musicians.py │ │ │ │ └── venues.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ ├── 0004_alter_band_options_alter_musician_options_and_more.py │ │ │ ├── 0005_alter_userprofile_musician_profiles_and_more.py │ │ │ ├── 0006_venue_description_venue_picture.py │ │ │ ├── 0007_musician_description_musician_picture.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── content │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── forms.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_alter_seekingad_options.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── api.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── promoters │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── api.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ └── promoters.json │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_promoter_famous_for.py │ │ │ ├── 0003_promoter_common_name_promoter_full_name.py │ │ │ ├── 0004_data_fullname.py │ │ │ ├── 0005_remove_promoter_first_name_remove_promoter_last_name.py │ │ │ ├── 0006_promoter_birth.py │ │ │ ├── 0006_promoter_birth_squashed_0007_promoter_death.py │ │ │ ├── 0007_promoter_death.py │ │ │ ├── 0008_promoter_street_address.py │ │ │ ├── 0008_promoter_street_address_squashed_0009_promoter_country_code_promoter_postal_zip_and_more.py │ │ │ ├── 0009_promoter_country_code_promoter_postal_zip_and_more.py │ │ │ ├── 0010_promoter_address.py │ │ │ ├── 0011_data_address.py │ │ │ ├── 0012_remove_promoter_city_remove_promoter_country_code_and_more.py │ │ │ ├── 0013_alter_promoter_address.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── requirements.txt │ │ ├── static │ │ └── img │ │ │ └── logo.png │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── comment.html │ │ ├── edit_musician.html │ │ ├── edit_venue.html │ │ ├── experiment.html │ │ ├── general.html │ │ ├── home.html │ │ ├── list_ads.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ ├── registration │ │ ├── login.html │ │ ├── password_reset_complete.html │ │ ├── password_reset_confirm.html │ │ ├── password_reset_done.html │ │ ├── password_reset_email.html │ │ └── password_reset_form.html │ │ ├── seeking_ad.html │ │ └── venues.html ├── ch11b_exercises │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── api_auth.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── api.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── forms.py │ │ ├── management │ │ │ ├── __init__.py │ │ │ └── commands │ │ │ │ ├── __init__.py │ │ │ │ ├── cleanup.py │ │ │ │ ├── musicians.py │ │ │ │ └── venues.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ ├── 0004_alter_band_options_alter_musician_options_and_more.py │ │ │ ├── 0005_alter_userprofile_musician_profiles_and_more.py │ │ │ ├── 0006_venue_description_venue_picture.py │ │ │ ├── 0007_musician_description_musician_picture.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── content │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── forms.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_alter_seekingad_options.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── api.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── promoters │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── api.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ └── promoters.json │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_promoter_famous_for.py │ │ │ ├── 0003_promoter_common_name_promoter_full_name.py │ │ │ ├── 0004_data_fullname.py │ │ │ ├── 0005_remove_promoter_first_name_remove_promoter_last_name.py │ │ │ ├── 0006_promoter_birth.py │ │ │ ├── 0006_promoter_birth_squashed_0007_promoter_death.py │ │ │ ├── 0007_promoter_death.py │ │ │ ├── 0008_promoter_street_address.py │ │ │ ├── 0008_promoter_street_address_squashed_0009_promoter_country_code_promoter_postal_zip_and_more.py │ │ │ ├── 0009_promoter_country_code_promoter_postal_zip_and_more.py │ │ │ ├── 0010_promoter_address.py │ │ │ ├── 0011_data_address.py │ │ │ ├── 0012_remove_promoter_city_remove_promoter_country_code_and_more.py │ │ │ ├── 0013_alter_promoter_address.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── requirements.txt │ │ ├── static │ │ └── img │ │ │ └── logo.png │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── comment.html │ │ ├── edit_musician.html │ │ ├── edit_venue.html │ │ ├── experiment.html │ │ ├── general.html │ │ ├── home.html │ │ ├── list_ads.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ ├── registration │ │ ├── login.html │ │ ├── password_reset_complete.html │ │ ├── password_reset_confirm.html │ │ ├── password_reset_done.html │ │ ├── password_reset_email.html │ │ └── password_reset_form.html │ │ ├── seeking_ad.html │ │ └── venues.html ├── ch12a_htmx │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── api_auth.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── api.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── forms.py │ │ ├── management │ │ │ ├── __init__.py │ │ │ └── commands │ │ │ │ ├── __init__.py │ │ │ │ ├── cleanup.py │ │ │ │ ├── musicians.py │ │ │ │ └── venues.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ ├── 0004_alter_band_options_alter_musician_options_and_more.py │ │ │ ├── 0005_alter_userprofile_musician_profiles_and_more.py │ │ │ ├── 0006_venue_description_venue_picture.py │ │ │ ├── 0007_musician_description_musician_picture.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── content │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── forms.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_alter_seekingad_options.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── api.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── promoters │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── api.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ └── promoters.json │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_promoter_famous_for.py │ │ │ ├── 0003_promoter_common_name_promoter_full_name.py │ │ │ ├── 0004_data_fullname.py │ │ │ ├── 0005_remove_promoter_first_name_remove_promoter_last_name.py │ │ │ ├── 0006_promoter_birth.py │ │ │ ├── 0006_promoter_birth_squashed_0007_promoter_death.py │ │ │ ├── 0007_promoter_death.py │ │ │ ├── 0008_promoter_street_address.py │ │ │ ├── 0008_promoter_street_address_squashed_0009_promoter_country_code_promoter_postal_zip_and_more.py │ │ │ ├── 0009_promoter_country_code_promoter_postal_zip_and_more.py │ │ │ ├── 0010_promoter_address.py │ │ │ ├── 0011_data_address.py │ │ │ ├── 0012_remove_promoter_city_remove_promoter_country_code_and_more.py │ │ │ ├── 0013_alter_promoter_address.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── requirements.txt │ │ ├── static │ │ ├── img │ │ │ └── logo.png │ │ └── js │ │ │ └── htmx-1.9.8.min.js │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── comment.html │ │ ├── edit_musician.html │ │ ├── edit_venue.html │ │ ├── experiment.html │ │ ├── general.html │ │ ├── home.html │ │ ├── list_ads.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ ├── partials │ │ ├── edit_room_form.html │ │ ├── musician_results.html │ │ ├── promoters.html │ │ └── show_room.html │ │ ├── promoters.html │ │ ├── registration │ │ ├── login.html │ │ ├── password_reset_complete.html │ │ ├── password_reset_confirm.html │ │ ├── password_reset_done.html │ │ ├── password_reset_email.html │ │ └── password_reset_form.html │ │ ├── room_editor.html │ │ ├── search_musicians.html │ │ ├── seeking_ad.html │ │ └── venues.html ├── ch12b_exercises │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── api_auth.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── api.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── forms.py │ │ ├── management │ │ │ ├── __init__.py │ │ │ └── commands │ │ │ │ ├── __init__.py │ │ │ │ ├── cleanup.py │ │ │ │ ├── musicians.py │ │ │ │ └── venues.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ ├── 0004_alter_band_options_alter_musician_options_and_more.py │ │ │ ├── 0005_alter_userprofile_musician_profiles_and_more.py │ │ │ ├── 0006_venue_description_venue_picture.py │ │ │ ├── 0007_musician_description_musician_picture.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── content │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── forms.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_alter_seekingad_options.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── api.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── promoters │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── api.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ └── promoters.json │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_promoter_famous_for.py │ │ │ ├── 0003_promoter_common_name_promoter_full_name.py │ │ │ ├── 0004_data_fullname.py │ │ │ ├── 0005_remove_promoter_first_name_remove_promoter_last_name.py │ │ │ ├── 0006_promoter_birth.py │ │ │ ├── 0006_promoter_birth_squashed_0007_promoter_death.py │ │ │ ├── 0007_promoter_death.py │ │ │ ├── 0008_promoter_street_address.py │ │ │ ├── 0008_promoter_street_address_squashed_0009_promoter_country_code_promoter_postal_zip_and_more.py │ │ │ ├── 0009_promoter_country_code_promoter_postal_zip_and_more.py │ │ │ ├── 0010_promoter_address.py │ │ │ ├── 0011_data_address.py │ │ │ ├── 0012_remove_promoter_city_remove_promoter_country_code_and_more.py │ │ │ ├── 0013_alter_promoter_address.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── requirements.txt │ │ ├── static │ │ ├── img │ │ │ └── logo.png │ │ └── js │ │ │ └── htmx-1.9.8.min.js │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── comment.html │ │ ├── edit_musician.html │ │ ├── edit_venue.html │ │ ├── experiment.html │ │ ├── general.html │ │ ├── home.html │ │ ├── list_ads.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ ├── partials │ │ ├── ad_results.html │ │ ├── edit_room_form.html │ │ ├── musician_results.html │ │ ├── promoters.html │ │ └── show_room.html │ │ ├── promoters.html │ │ ├── registration │ │ ├── login.html │ │ ├── password_reset_complete.html │ │ ├── password_reset_confirm.html │ │ ├── password_reset_done.html │ │ ├── password_reset_email.html │ │ └── password_reset_form.html │ │ ├── room_editor.html │ │ ├── search_ads.html │ │ ├── search_musicians.html │ │ ├── seeking_ad.html │ │ ├── tabbed_listing.html │ │ └── venues.html ├── ch13a_power │ └── RiffMates │ │ ├── RiffMates │ │ ├── __init__.py │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ │ ├── api_auth.py │ │ ├── bands │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── api.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ ├── bands.json │ │ │ └── jimi.json │ │ ├── forms.py │ │ ├── management │ │ │ ├── __init__.py │ │ │ └── commands │ │ │ │ ├── __init__.py │ │ │ │ ├── cleanup.py │ │ │ │ ├── musicians.py │ │ │ │ └── venues.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_venue_room.py │ │ │ ├── 0003_band.py │ │ │ ├── 0004_alter_band_options_alter_musician_options_and_more.py │ │ │ ├── 0005_alter_userprofile_musician_profiles_and_more.py │ │ │ ├── 0006_venue_description_venue_picture.py │ │ │ ├── 0007_musician_description_musician_picture.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── content │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── apps.py │ │ ├── forms.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_alter_seekingad_options.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── urls.py │ │ └── views.py │ │ ├── home │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── api.py │ │ ├── apps.py │ │ ├── migrations │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ └── views.py │ │ ├── manage.py │ │ ├── promoters │ │ ├── __init__.py │ │ ├── admin.py │ │ ├── api.py │ │ ├── apps.py │ │ ├── fixtures │ │ │ └── promoters.json │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── 0002_promoter_famous_for.py │ │ │ ├── 0003_promoter_common_name_promoter_full_name.py │ │ │ ├── 0004_data_fullname.py │ │ │ ├── 0005_remove_promoter_first_name_remove_promoter_last_name.py │ │ │ ├── 0006_promoter_birth.py │ │ │ ├── 0006_promoter_birth_squashed_0007_promoter_death.py │ │ │ ├── 0007_promoter_death.py │ │ │ ├── 0008_promoter_street_address.py │ │ │ ├── 0008_promoter_street_address_squashed_0009_promoter_country_code_promoter_postal_zip_and_more.py │ │ │ ├── 0009_promoter_country_code_promoter_postal_zip_and_more.py │ │ │ ├── 0010_promoter_address.py │ │ │ ├── 0011_data_address.py │ │ │ ├── 0012_remove_promoter_city_remove_promoter_country_code_and_more.py │ │ │ ├── 0013_alter_promoter_address.py │ │ │ └── __init__.py │ │ ├── models.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ │ ├── requirements.txt │ │ ├── static │ │ ├── img │ │ │ ├── favicon │ │ │ │ ├── android-chrome-192x192.png │ │ │ │ ├── android-chrome-256x256.png │ │ │ │ ├── apple-touch-icon.png │ │ │ │ ├── browserconfig.xml │ │ │ │ ├── favicon-16x16.png │ │ │ │ ├── favicon-32x32.png │ │ │ │ ├── favicon.ico │ │ │ │ ├── mstile-150x150.png │ │ │ │ ├── safari-pinned-tab.svg │ │ │ │ └── site.webmanifest │ │ │ └── logo.png │ │ └── js │ │ │ └── htmx-1.9.8.min.js │ │ └── templates │ │ ├── adv_news.html │ │ ├── band.html │ │ ├── bands.html │ │ ├── base.html │ │ ├── base_bootstrap.html │ │ ├── comment.html │ │ ├── edit_musician.html │ │ ├── edit_venue.html │ │ ├── experiment.html │ │ ├── general.html │ │ ├── home.html │ │ ├── list_ads.html │ │ ├── musician.html │ │ ├── musicians.html │ │ ├── news.html │ │ ├── news2.html │ │ ├── partials │ │ ├── ad_results.html │ │ ├── edit_room_form.html │ │ ├── musician_results.html │ │ ├── promoters.html │ │ └── show_room.html │ │ ├── promoters.html │ │ ├── registration │ │ ├── login.html │ │ ├── password_reset_complete.html │ │ ├── password_reset_confirm.html │ │ ├── password_reset_done.html │ │ ├── password_reset_email.html │ │ └── password_reset_form.html │ │ ├── room_editor.html │ │ ├── search_ads.html │ │ ├── search_musicians.html │ │ ├── seeking_ad.html │ │ ├── tabbed_listing.html │ │ └── venues.html └── ch99_final │ └── RiffMates │ ├── RiffMates │ ├── __init__.py │ ├── asgi.py │ ├── settings.py │ ├── urls.py │ └── wsgi.py │ ├── api_auth.py │ ├── bands │ ├── __init__.py │ ├── admin.py │ ├── api.py │ ├── apps.py │ ├── fixtures │ │ ├── bands.json │ │ └── jimi.json │ ├── forms.py │ ├── management │ │ ├── __init__.py │ │ └── commands │ │ │ ├── __init__.py │ │ │ ├── cleanup.py │ │ │ ├── musicians.py │ │ │ └── venues.py │ ├── migrations │ │ ├── 0001_initial.py │ │ ├── 0002_venue_room.py │ │ ├── 0003_band.py │ │ ├── 0004_alter_band_options_alter_musician_options_and_more.py │ │ ├── 0005_alter_userprofile_musician_profiles_and_more.py │ │ ├── 0006_venue_description_venue_picture.py │ │ ├── 0007_musician_description_musician_picture.py │ │ └── __init__.py │ ├── models.py │ ├── tests.py │ ├── urls.py │ └── views.py │ ├── content │ ├── __init__.py │ ├── admin.py │ ├── apps.py │ ├── forms.py │ ├── migrations │ │ ├── 0001_initial.py │ │ ├── 0002_alter_seekingad_options.py │ │ └── __init__.py │ ├── models.py │ ├── urls.py │ └── views.py │ ├── home │ ├── __init__.py │ ├── admin.py │ ├── api.py │ ├── apps.py │ ├── migrations │ │ └── __init__.py │ ├── models.py │ ├── tests.py │ └── views.py │ ├── manage.py │ ├── promoters │ ├── __init__.py │ ├── admin.py │ ├── api.py │ ├── apps.py │ ├── fixtures │ │ └── promoters.json │ ├── migrations │ │ ├── 0001_initial.py │ │ ├── 0002_promoter_famous_for.py │ │ ├── 0003_promoter_common_name_promoter_full_name.py │ │ ├── 0004_data_fullname.py │ │ ├── 0005_remove_promoter_first_name_remove_promoter_last_name.py │ │ ├── 0006_promoter_birth.py │ │ ├── 0006_promoter_birth_squashed_0007_promoter_death.py │ │ ├── 0007_promoter_death.py │ │ ├── 0008_promoter_street_address.py │ │ ├── 0008_promoter_street_address_squashed_0009_promoter_country_code_promoter_postal_zip_and_more.py │ │ ├── 0009_promoter_country_code_promoter_postal_zip_and_more.py │ │ ├── 0010_promoter_address.py │ │ ├── 0011_data_address.py │ │ ├── 0012_remove_promoter_city_remove_promoter_country_code_and_more.py │ │ ├── 0013_alter_promoter_address.py │ │ └── __init__.py │ ├── models.py │ ├── tests.py │ ├── urls.py │ └── views.py │ ├── requirements.txt │ ├── static │ ├── img │ │ ├── favicon │ │ │ ├── android-chrome-192x192.png │ │ │ ├── android-chrome-256x256.png │ │ │ ├── apple-touch-icon.png │ │ │ ├── browserconfig.xml │ │ │ ├── favicon-16x16.png │ │ │ ├── favicon-32x32.png │ │ │ ├── favicon.ico │ │ │ ├── mstile-150x150.png │ │ │ ├── safari-pinned-tab.svg │ │ │ └── site.webmanifest │ │ └── logo.png │ └── js │ │ └── htmx-1.9.8.min.js │ ├── templates │ ├── adv_news.html │ ├── band.html │ ├── bands.html │ ├── base.html │ ├── base_bootstrap.html │ ├── comment.html │ ├── edit_musician.html │ ├── edit_venue.html │ ├── experiment.html │ ├── general.html │ ├── home.html │ ├── list_ads.html │ ├── musician.html │ ├── musicians.html │ ├── news.html │ ├── news2.html │ ├── partials │ │ ├── ad_results.html │ │ ├── edit_room_form.html │ │ ├── musician_results.html │ │ ├── promoters.html │ │ └── show_room.html │ ├── promoters.html │ ├── registration │ │ ├── login.html │ │ ├── password_reset_complete.html │ │ ├── password_reset_confirm.html │ │ ├── password_reset_done.html │ │ ├── password_reset_email.html │ │ └── password_reset_form.html │ ├── room_editor.html │ ├── search_ads.html │ ├── search_musicians.html │ ├── seeking_ad.html │ ├── tabbed_listing.html │ └── venues.html │ └── tests │ ├── README.md │ ├── __init__.py │ └── test_all.py └── cover.png /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/.gitignore -------------------------------------------------------------------------------- /AppendixE_solutions.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/AppendixE_solutions.pdf -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/README.md -------------------------------------------------------------------------------- /code/ch02a_rocket/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch02a_rocket/RiffMates/RiffMates/asgi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch02a_rocket/RiffMates/RiffMates/asgi.py -------------------------------------------------------------------------------- /code/ch02a_rocket/RiffMates/RiffMates/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch02a_rocket/RiffMates/RiffMates/urls.py -------------------------------------------------------------------------------- /code/ch02a_rocket/RiffMates/RiffMates/wsgi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch02a_rocket/RiffMates/RiffMates/wsgi.py -------------------------------------------------------------------------------- /code/ch02a_rocket/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch02a_rocket/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch02a_rocket/RiffMates/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch02a_rocket/RiffMates/requirements.txt -------------------------------------------------------------------------------- /code/ch02b_credits/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch02b_credits/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch02b_credits/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch02b_credits/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch02b_credits/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch02b_credits/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch02b_credits/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch02b_credits/RiffMates/home/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch02b_credits/RiffMates/home/models.py -------------------------------------------------------------------------------- /code/ch02b_credits/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch02b_credits/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch02b_credits/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch02b_credits/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch02b_credits/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch02b_credits/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch02b_credits/RiffMates/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch02b_credits/RiffMates/requirements.txt -------------------------------------------------------------------------------- /code/ch02c_exercises/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch02c_exercises/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch02c_exercises/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch02c_exercises/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch02c_exercises/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch02c_exercises/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch02c_exercises/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch02c_exercises/RiffMates/home/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch02c_exercises/RiffMates/home/models.py -------------------------------------------------------------------------------- /code/ch02c_exercises/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch02c_exercises/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch02c_exercises/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch02c_exercises/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch02c_exercises/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch02c_exercises/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch03a_templates/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch03a_templates/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch03a_templates/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch03a_templates/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch03a_templates/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch03a_templates/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch03a_templates/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch03a_templates/RiffMates/home/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch03a_templates/RiffMates/home/models.py -------------------------------------------------------------------------------- /code/ch03a_templates/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch03a_templates/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch03a_templates/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch03a_templates/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch03a_templates/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch03a_templates/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch03b_inherit/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch03b_inherit/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch03b_inherit/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch03b_inherit/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch03b_inherit/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch03b_inherit/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch03b_inherit/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch03b_inherit/RiffMates/home/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch03b_inherit/RiffMates/home/models.py -------------------------------------------------------------------------------- /code/ch03b_inherit/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch03b_inherit/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch03b_inherit/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch03b_inherit/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch03b_inherit/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch03b_inherit/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch03b_inherit/RiffMates/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch03b_inherit/RiffMates/requirements.txt -------------------------------------------------------------------------------- /code/ch03c_exercises/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch03c_exercises/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch03c_exercises/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch03c_exercises/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch03c_exercises/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch03c_exercises/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch03c_exercises/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch03c_exercises/RiffMates/home/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch03c_exercises/RiffMates/home/models.py -------------------------------------------------------------------------------- /code/ch03c_exercises/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch03c_exercises/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch03c_exercises/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch03c_exercises/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch03c_exercises/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch03c_exercises/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch04a_bands/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch04a_bands/RiffMates/RiffMates/asgi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04a_bands/RiffMates/RiffMates/asgi.py -------------------------------------------------------------------------------- /code/ch04a_bands/RiffMates/RiffMates/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04a_bands/RiffMates/RiffMates/urls.py -------------------------------------------------------------------------------- /code/ch04a_bands/RiffMates/RiffMates/wsgi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04a_bands/RiffMates/RiffMates/wsgi.py -------------------------------------------------------------------------------- /code/ch04a_bands/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch04a_bands/RiffMates/bands/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04a_bands/RiffMates/bands/admin.py -------------------------------------------------------------------------------- /code/ch04a_bands/RiffMates/bands/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04a_bands/RiffMates/bands/apps.py -------------------------------------------------------------------------------- /code/ch04a_bands/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch04a_bands/RiffMates/bands/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04a_bands/RiffMates/bands/models.py -------------------------------------------------------------------------------- /code/ch04a_bands/RiffMates/bands/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04a_bands/RiffMates/bands/tests.py -------------------------------------------------------------------------------- /code/ch04a_bands/RiffMates/bands/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04a_bands/RiffMates/bands/urls.py -------------------------------------------------------------------------------- /code/ch04a_bands/RiffMates/bands/views.py: -------------------------------------------------------------------------------- 1 | # RiffMates/bands/views.py 2 | -------------------------------------------------------------------------------- /code/ch04a_bands/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch04a_bands/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04a_bands/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch04a_bands/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04a_bands/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch04a_bands/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch04a_bands/RiffMates/home/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04a_bands/RiffMates/home/models.py -------------------------------------------------------------------------------- /code/ch04a_bands/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04a_bands/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch04a_bands/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04a_bands/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch04a_bands/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04a_bands/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch04a_bands/RiffMates/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04a_bands/RiffMates/requirements.txt -------------------------------------------------------------------------------- /code/ch04b_query/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch04b_query/RiffMates/RiffMates/asgi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04b_query/RiffMates/RiffMates/asgi.py -------------------------------------------------------------------------------- /code/ch04b_query/RiffMates/RiffMates/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04b_query/RiffMates/RiffMates/urls.py -------------------------------------------------------------------------------- /code/ch04b_query/RiffMates/RiffMates/wsgi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04b_query/RiffMates/RiffMates/wsgi.py -------------------------------------------------------------------------------- /code/ch04b_query/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch04b_query/RiffMates/bands/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04b_query/RiffMates/bands/admin.py -------------------------------------------------------------------------------- /code/ch04b_query/RiffMates/bands/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04b_query/RiffMates/bands/apps.py -------------------------------------------------------------------------------- /code/ch04b_query/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch04b_query/RiffMates/bands/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04b_query/RiffMates/bands/models.py -------------------------------------------------------------------------------- /code/ch04b_query/RiffMates/bands/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04b_query/RiffMates/bands/tests.py -------------------------------------------------------------------------------- /code/ch04b_query/RiffMates/bands/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04b_query/RiffMates/bands/urls.py -------------------------------------------------------------------------------- /code/ch04b_query/RiffMates/bands/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04b_query/RiffMates/bands/views.py -------------------------------------------------------------------------------- /code/ch04b_query/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch04b_query/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04b_query/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch04b_query/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04b_query/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch04b_query/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch04b_query/RiffMates/home/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04b_query/RiffMates/home/models.py -------------------------------------------------------------------------------- /code/ch04b_query/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04b_query/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch04b_query/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04b_query/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch04b_query/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04b_query/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch04b_query/RiffMates/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04b_query/RiffMates/requirements.txt -------------------------------------------------------------------------------- /code/ch04c_page/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch04c_page/RiffMates/RiffMates/asgi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04c_page/RiffMates/RiffMates/asgi.py -------------------------------------------------------------------------------- /code/ch04c_page/RiffMates/RiffMates/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04c_page/RiffMates/RiffMates/urls.py -------------------------------------------------------------------------------- /code/ch04c_page/RiffMates/RiffMates/wsgi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04c_page/RiffMates/RiffMates/wsgi.py -------------------------------------------------------------------------------- /code/ch04c_page/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch04c_page/RiffMates/bands/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04c_page/RiffMates/bands/admin.py -------------------------------------------------------------------------------- /code/ch04c_page/RiffMates/bands/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04c_page/RiffMates/bands/apps.py -------------------------------------------------------------------------------- /code/ch04c_page/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch04c_page/RiffMates/bands/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04c_page/RiffMates/bands/models.py -------------------------------------------------------------------------------- /code/ch04c_page/RiffMates/bands/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04c_page/RiffMates/bands/tests.py -------------------------------------------------------------------------------- /code/ch04c_page/RiffMates/bands/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04c_page/RiffMates/bands/urls.py -------------------------------------------------------------------------------- /code/ch04c_page/RiffMates/bands/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04c_page/RiffMates/bands/views.py -------------------------------------------------------------------------------- /code/ch04c_page/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch04c_page/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04c_page/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch04c_page/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04c_page/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch04c_page/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch04c_page/RiffMates/home/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04c_page/RiffMates/home/models.py -------------------------------------------------------------------------------- /code/ch04c_page/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04c_page/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch04c_page/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04c_page/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch04c_page/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04c_page/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch04c_page/RiffMates/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04c_page/RiffMates/requirements.txt -------------------------------------------------------------------------------- /code/ch04c_page/RiffMates/templates/base.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04c_page/RiffMates/templates/base.html -------------------------------------------------------------------------------- /code/ch04c_page/RiffMates/templates/news.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04c_page/RiffMates/templates/news.html -------------------------------------------------------------------------------- /code/ch04d_relationships/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch04d_relationships/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch04d_relationships/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch04d_relationships/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch04d_relationships/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch04d_relationships/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04d_relationships/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch04e_exercises/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch04e_exercises/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch04e_exercises/RiffMates/bands/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04e_exercises/RiffMates/bands/admin.py -------------------------------------------------------------------------------- /code/ch04e_exercises/RiffMates/bands/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04e_exercises/RiffMates/bands/apps.py -------------------------------------------------------------------------------- /code/ch04e_exercises/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch04e_exercises/RiffMates/bands/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04e_exercises/RiffMates/bands/tests.py -------------------------------------------------------------------------------- /code/ch04e_exercises/RiffMates/bands/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04e_exercises/RiffMates/bands/urls.py -------------------------------------------------------------------------------- /code/ch04e_exercises/RiffMates/bands/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04e_exercises/RiffMates/bands/views.py -------------------------------------------------------------------------------- /code/ch04e_exercises/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch04e_exercises/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04e_exercises/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch04e_exercises/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04e_exercises/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch04e_exercises/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch04e_exercises/RiffMates/home/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04e_exercises/RiffMates/home/models.py -------------------------------------------------------------------------------- /code/ch04e_exercises/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04e_exercises/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch04e_exercises/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04e_exercises/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch04e_exercises/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch04e_exercises/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch05a_admin/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch05a_admin/RiffMates/RiffMates/asgi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05a_admin/RiffMates/RiffMates/asgi.py -------------------------------------------------------------------------------- /code/ch05a_admin/RiffMates/RiffMates/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05a_admin/RiffMates/RiffMates/urls.py -------------------------------------------------------------------------------- /code/ch05a_admin/RiffMates/RiffMates/wsgi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05a_admin/RiffMates/RiffMates/wsgi.py -------------------------------------------------------------------------------- /code/ch05a_admin/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch05a_admin/RiffMates/bands/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05a_admin/RiffMates/bands/admin.py -------------------------------------------------------------------------------- /code/ch05a_admin/RiffMates/bands/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05a_admin/RiffMates/bands/apps.py -------------------------------------------------------------------------------- /code/ch05a_admin/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch05a_admin/RiffMates/bands/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05a_admin/RiffMates/bands/models.py -------------------------------------------------------------------------------- /code/ch05a_admin/RiffMates/bands/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05a_admin/RiffMates/bands/tests.py -------------------------------------------------------------------------------- /code/ch05a_admin/RiffMates/bands/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05a_admin/RiffMates/bands/urls.py -------------------------------------------------------------------------------- /code/ch05a_admin/RiffMates/bands/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05a_admin/RiffMates/bands/views.py -------------------------------------------------------------------------------- /code/ch05a_admin/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch05a_admin/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05a_admin/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch05a_admin/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05a_admin/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch05a_admin/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch05a_admin/RiffMates/home/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05a_admin/RiffMates/home/models.py -------------------------------------------------------------------------------- /code/ch05a_admin/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05a_admin/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch05a_admin/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05a_admin/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch05a_admin/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05a_admin/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch05a_admin/RiffMates/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05a_admin/RiffMates/requirements.txt -------------------------------------------------------------------------------- /code/ch05b_customize/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch05b_customize/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch05b_customize/RiffMates/bands/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05b_customize/RiffMates/bands/admin.py -------------------------------------------------------------------------------- /code/ch05b_customize/RiffMates/bands/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05b_customize/RiffMates/bands/apps.py -------------------------------------------------------------------------------- /code/ch05b_customize/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch05b_customize/RiffMates/bands/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05b_customize/RiffMates/bands/tests.py -------------------------------------------------------------------------------- /code/ch05b_customize/RiffMates/bands/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05b_customize/RiffMates/bands/urls.py -------------------------------------------------------------------------------- /code/ch05b_customize/RiffMates/bands/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05b_customize/RiffMates/bands/views.py -------------------------------------------------------------------------------- /code/ch05b_customize/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch05b_customize/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05b_customize/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch05b_customize/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05b_customize/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch05b_customize/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch05b_customize/RiffMates/home/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05b_customize/RiffMates/home/models.py -------------------------------------------------------------------------------- /code/ch05b_customize/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05b_customize/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch05b_customize/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05b_customize/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch05b_customize/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05b_customize/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch05c_search/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch05c_search/RiffMates/RiffMates/asgi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05c_search/RiffMates/RiffMates/asgi.py -------------------------------------------------------------------------------- /code/ch05c_search/RiffMates/RiffMates/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05c_search/RiffMates/RiffMates/urls.py -------------------------------------------------------------------------------- /code/ch05c_search/RiffMates/RiffMates/wsgi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05c_search/RiffMates/RiffMates/wsgi.py -------------------------------------------------------------------------------- /code/ch05c_search/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch05c_search/RiffMates/bands/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05c_search/RiffMates/bands/admin.py -------------------------------------------------------------------------------- /code/ch05c_search/RiffMates/bands/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05c_search/RiffMates/bands/apps.py -------------------------------------------------------------------------------- /code/ch05c_search/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch05c_search/RiffMates/bands/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05c_search/RiffMates/bands/models.py -------------------------------------------------------------------------------- /code/ch05c_search/RiffMates/bands/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05c_search/RiffMates/bands/tests.py -------------------------------------------------------------------------------- /code/ch05c_search/RiffMates/bands/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05c_search/RiffMates/bands/urls.py -------------------------------------------------------------------------------- /code/ch05c_search/RiffMates/bands/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05c_search/RiffMates/bands/views.py -------------------------------------------------------------------------------- /code/ch05c_search/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch05c_search/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05c_search/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch05c_search/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05c_search/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch05c_search/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch05c_search/RiffMates/home/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05c_search/RiffMates/home/models.py -------------------------------------------------------------------------------- /code/ch05c_search/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05c_search/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch05c_search/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05c_search/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch05c_search/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05c_search/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch05c_search/RiffMates/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05c_search/RiffMates/requirements.txt -------------------------------------------------------------------------------- /code/ch05d_filter/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch05d_filter/RiffMates/RiffMates/asgi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05d_filter/RiffMates/RiffMates/asgi.py -------------------------------------------------------------------------------- /code/ch05d_filter/RiffMates/RiffMates/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05d_filter/RiffMates/RiffMates/urls.py -------------------------------------------------------------------------------- /code/ch05d_filter/RiffMates/RiffMates/wsgi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05d_filter/RiffMates/RiffMates/wsgi.py -------------------------------------------------------------------------------- /code/ch05d_filter/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch05d_filter/RiffMates/bands/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05d_filter/RiffMates/bands/admin.py -------------------------------------------------------------------------------- /code/ch05d_filter/RiffMates/bands/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05d_filter/RiffMates/bands/apps.py -------------------------------------------------------------------------------- /code/ch05d_filter/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch05d_filter/RiffMates/bands/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05d_filter/RiffMates/bands/models.py -------------------------------------------------------------------------------- /code/ch05d_filter/RiffMates/bands/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05d_filter/RiffMates/bands/tests.py -------------------------------------------------------------------------------- /code/ch05d_filter/RiffMates/bands/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05d_filter/RiffMates/bands/urls.py -------------------------------------------------------------------------------- /code/ch05d_filter/RiffMates/bands/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05d_filter/RiffMates/bands/views.py -------------------------------------------------------------------------------- /code/ch05d_filter/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch05d_filter/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05d_filter/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch05d_filter/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05d_filter/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch05d_filter/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch05d_filter/RiffMates/home/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05d_filter/RiffMates/home/models.py -------------------------------------------------------------------------------- /code/ch05d_filter/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05d_filter/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch05d_filter/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05d_filter/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch05d_filter/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05d_filter/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch05d_filter/RiffMates/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05d_filter/RiffMates/requirements.txt -------------------------------------------------------------------------------- /code/ch05e_band/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch05e_band/RiffMates/RiffMates/asgi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05e_band/RiffMates/RiffMates/asgi.py -------------------------------------------------------------------------------- /code/ch05e_band/RiffMates/RiffMates/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05e_band/RiffMates/RiffMates/urls.py -------------------------------------------------------------------------------- /code/ch05e_band/RiffMates/RiffMates/wsgi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05e_band/RiffMates/RiffMates/wsgi.py -------------------------------------------------------------------------------- /code/ch05e_band/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch05e_band/RiffMates/bands/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05e_band/RiffMates/bands/admin.py -------------------------------------------------------------------------------- /code/ch05e_band/RiffMates/bands/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05e_band/RiffMates/bands/apps.py -------------------------------------------------------------------------------- /code/ch05e_band/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch05e_band/RiffMates/bands/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05e_band/RiffMates/bands/models.py -------------------------------------------------------------------------------- /code/ch05e_band/RiffMates/bands/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05e_band/RiffMates/bands/tests.py -------------------------------------------------------------------------------- /code/ch05e_band/RiffMates/bands/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05e_band/RiffMates/bands/urls.py -------------------------------------------------------------------------------- /code/ch05e_band/RiffMates/bands/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05e_band/RiffMates/bands/views.py -------------------------------------------------------------------------------- /code/ch05e_band/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch05e_band/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05e_band/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch05e_band/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05e_band/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch05e_band/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch05e_band/RiffMates/home/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05e_band/RiffMates/home/models.py -------------------------------------------------------------------------------- /code/ch05e_band/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05e_band/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch05e_band/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05e_band/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch05e_band/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05e_band/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch05e_band/RiffMates/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05e_band/RiffMates/requirements.txt -------------------------------------------------------------------------------- /code/ch05e_band/RiffMates/templates/band.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05e_band/RiffMates/templates/band.html -------------------------------------------------------------------------------- /code/ch05e_band/RiffMates/templates/base.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05e_band/RiffMates/templates/base.html -------------------------------------------------------------------------------- /code/ch05e_band/RiffMates/templates/news.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05e_band/RiffMates/templates/news.html -------------------------------------------------------------------------------- /code/ch05f_exercises/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch05f_exercises/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch05f_exercises/RiffMates/bands/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05f_exercises/RiffMates/bands/admin.py -------------------------------------------------------------------------------- /code/ch05f_exercises/RiffMates/bands/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05f_exercises/RiffMates/bands/apps.py -------------------------------------------------------------------------------- /code/ch05f_exercises/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch05f_exercises/RiffMates/bands/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05f_exercises/RiffMates/bands/tests.py -------------------------------------------------------------------------------- /code/ch05f_exercises/RiffMates/bands/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05f_exercises/RiffMates/bands/urls.py -------------------------------------------------------------------------------- /code/ch05f_exercises/RiffMates/bands/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05f_exercises/RiffMates/bands/views.py -------------------------------------------------------------------------------- /code/ch05f_exercises/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch05f_exercises/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05f_exercises/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch05f_exercises/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05f_exercises/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch05f_exercises/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch05f_exercises/RiffMates/home/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05f_exercises/RiffMates/home/models.py -------------------------------------------------------------------------------- /code/ch05f_exercises/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05f_exercises/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch05f_exercises/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05f_exercises/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch05f_exercises/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch05f_exercises/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch06a_userprofile/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch06a_userprofile/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch06a_userprofile/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch06a_userprofile/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch06a_userprofile/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch06a_userprofile/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch06a_userprofile/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch06a_userprofile/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch06a_userprofile/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch06b_signal/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch06b_signal/RiffMates/RiffMates/asgi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch06b_signal/RiffMates/RiffMates/asgi.py -------------------------------------------------------------------------------- /code/ch06b_signal/RiffMates/RiffMates/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch06b_signal/RiffMates/RiffMates/urls.py -------------------------------------------------------------------------------- /code/ch06b_signal/RiffMates/RiffMates/wsgi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch06b_signal/RiffMates/RiffMates/wsgi.py -------------------------------------------------------------------------------- /code/ch06b_signal/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch06b_signal/RiffMates/bands/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch06b_signal/RiffMates/bands/admin.py -------------------------------------------------------------------------------- /code/ch06b_signal/RiffMates/bands/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch06b_signal/RiffMates/bands/apps.py -------------------------------------------------------------------------------- /code/ch06b_signal/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch06b_signal/RiffMates/bands/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch06b_signal/RiffMates/bands/models.py -------------------------------------------------------------------------------- /code/ch06b_signal/RiffMates/bands/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch06b_signal/RiffMates/bands/tests.py -------------------------------------------------------------------------------- /code/ch06b_signal/RiffMates/bands/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch06b_signal/RiffMates/bands/urls.py -------------------------------------------------------------------------------- /code/ch06b_signal/RiffMates/bands/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch06b_signal/RiffMates/bands/views.py -------------------------------------------------------------------------------- /code/ch06b_signal/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch06b_signal/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch06b_signal/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch06b_signal/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch06b_signal/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch06b_signal/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch06b_signal/RiffMates/home/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch06b_signal/RiffMates/home/models.py -------------------------------------------------------------------------------- /code/ch06b_signal/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch06b_signal/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch06b_signal/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch06b_signal/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch06b_signal/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch06b_signal/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch06b_signal/RiffMates/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch06b_signal/RiffMates/requirements.txt -------------------------------------------------------------------------------- /code/ch06c_exercises/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch06c_exercises/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch06c_exercises/RiffMates/bands/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch06c_exercises/RiffMates/bands/admin.py -------------------------------------------------------------------------------- /code/ch06c_exercises/RiffMates/bands/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch06c_exercises/RiffMates/bands/apps.py -------------------------------------------------------------------------------- /code/ch06c_exercises/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch06c_exercises/RiffMates/bands/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch06c_exercises/RiffMates/bands/tests.py -------------------------------------------------------------------------------- /code/ch06c_exercises/RiffMates/bands/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch06c_exercises/RiffMates/bands/urls.py -------------------------------------------------------------------------------- /code/ch06c_exercises/RiffMates/bands/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch06c_exercises/RiffMates/bands/views.py -------------------------------------------------------------------------------- /code/ch06c_exercises/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch06c_exercises/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch06c_exercises/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch06c_exercises/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch06c_exercises/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch06c_exercises/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch06c_exercises/RiffMates/home/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch06c_exercises/RiffMates/home/models.py -------------------------------------------------------------------------------- /code/ch06c_exercises/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch06c_exercises/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch06c_exercises/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch06c_exercises/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch06c_exercises/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch06c_exercises/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch07a_forms/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07a_forms/RiffMates/RiffMates/asgi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07a_forms/RiffMates/RiffMates/asgi.py -------------------------------------------------------------------------------- /code/ch07a_forms/RiffMates/RiffMates/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07a_forms/RiffMates/RiffMates/urls.py -------------------------------------------------------------------------------- /code/ch07a_forms/RiffMates/RiffMates/wsgi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07a_forms/RiffMates/RiffMates/wsgi.py -------------------------------------------------------------------------------- /code/ch07a_forms/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07a_forms/RiffMates/bands/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07a_forms/RiffMates/bands/admin.py -------------------------------------------------------------------------------- /code/ch07a_forms/RiffMates/bands/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07a_forms/RiffMates/bands/apps.py -------------------------------------------------------------------------------- /code/ch07a_forms/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07a_forms/RiffMates/bands/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07a_forms/RiffMates/bands/models.py -------------------------------------------------------------------------------- /code/ch07a_forms/RiffMates/bands/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07a_forms/RiffMates/bands/tests.py -------------------------------------------------------------------------------- /code/ch07a_forms/RiffMates/bands/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07a_forms/RiffMates/bands/urls.py -------------------------------------------------------------------------------- /code/ch07a_forms/RiffMates/bands/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07a_forms/RiffMates/bands/views.py -------------------------------------------------------------------------------- /code/ch07a_forms/RiffMates/content/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07a_forms/RiffMates/content/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07a_forms/RiffMates/content/apps.py -------------------------------------------------------------------------------- /code/ch07a_forms/RiffMates/content/forms.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07a_forms/RiffMates/content/forms.py -------------------------------------------------------------------------------- /code/ch07a_forms/RiffMates/content/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07a_forms/RiffMates/content/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07a_forms/RiffMates/content/urls.py -------------------------------------------------------------------------------- /code/ch07a_forms/RiffMates/content/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07a_forms/RiffMates/content/views.py -------------------------------------------------------------------------------- /code/ch07a_forms/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07a_forms/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07a_forms/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch07a_forms/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07a_forms/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch07a_forms/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07a_forms/RiffMates/home/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07a_forms/RiffMates/home/models.py -------------------------------------------------------------------------------- /code/ch07a_forms/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07a_forms/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch07a_forms/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07a_forms/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch07a_forms/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07a_forms/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch07a_forms/RiffMates/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07a_forms/RiffMates/requirements.txt -------------------------------------------------------------------------------- /code/ch07b_modelforms/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07b_modelforms/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07b_modelforms/RiffMates/bands/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07b_modelforms/RiffMates/bands/apps.py -------------------------------------------------------------------------------- /code/ch07b_modelforms/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07b_modelforms/RiffMates/bands/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07b_modelforms/RiffMates/bands/urls.py -------------------------------------------------------------------------------- /code/ch07b_modelforms/RiffMates/content/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07b_modelforms/RiffMates/content/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07b_modelforms/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07b_modelforms/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07b_modelforms/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch07b_modelforms/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07b_modelforms/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch07b_modelforms/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07b_modelforms/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07b_modelforms/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch07b_modelforms/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07b_modelforms/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch07b_modelforms/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07b_modelforms/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch07c_editingforms/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07c_editingforms/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07c_editingforms/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07c_editingforms/RiffMates/content/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07c_editingforms/RiffMates/content/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07c_editingforms/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07c_editingforms/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07c_editingforms/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07c_editingforms/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch07d_staticfiles/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07d_staticfiles/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07d_staticfiles/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07d_staticfiles/RiffMates/content/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07d_staticfiles/RiffMates/content/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07d_staticfiles/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07d_staticfiles/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07d_staticfiles/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch07d_staticfiles/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07d_staticfiles/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07d_staticfiles/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch07e_uploads/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07e_uploads/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07e_uploads/RiffMates/bands/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07e_uploads/RiffMates/bands/admin.py -------------------------------------------------------------------------------- /code/ch07e_uploads/RiffMates/bands/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07e_uploads/RiffMates/bands/apps.py -------------------------------------------------------------------------------- /code/ch07e_uploads/RiffMates/bands/forms.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07e_uploads/RiffMates/bands/forms.py -------------------------------------------------------------------------------- /code/ch07e_uploads/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07e_uploads/RiffMates/bands/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07e_uploads/RiffMates/bands/models.py -------------------------------------------------------------------------------- /code/ch07e_uploads/RiffMates/bands/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07e_uploads/RiffMates/bands/tests.py -------------------------------------------------------------------------------- /code/ch07e_uploads/RiffMates/bands/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07e_uploads/RiffMates/bands/urls.py -------------------------------------------------------------------------------- /code/ch07e_uploads/RiffMates/bands/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07e_uploads/RiffMates/bands/views.py -------------------------------------------------------------------------------- /code/ch07e_uploads/RiffMates/content/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07e_uploads/RiffMates/content/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07e_uploads/RiffMates/content/admin.py -------------------------------------------------------------------------------- /code/ch07e_uploads/RiffMates/content/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07e_uploads/RiffMates/content/apps.py -------------------------------------------------------------------------------- /code/ch07e_uploads/RiffMates/content/forms.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07e_uploads/RiffMates/content/forms.py -------------------------------------------------------------------------------- /code/ch07e_uploads/RiffMates/content/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07e_uploads/RiffMates/content/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07e_uploads/RiffMates/content/urls.py -------------------------------------------------------------------------------- /code/ch07e_uploads/RiffMates/content/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07e_uploads/RiffMates/content/views.py -------------------------------------------------------------------------------- /code/ch07e_uploads/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07e_uploads/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07e_uploads/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch07e_uploads/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07e_uploads/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch07e_uploads/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07e_uploads/RiffMates/home/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07e_uploads/RiffMates/home/models.py -------------------------------------------------------------------------------- /code/ch07e_uploads/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07e_uploads/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch07e_uploads/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07e_uploads/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch07e_uploads/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07e_uploads/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch07e_uploads/RiffMates/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07e_uploads/RiffMates/requirements.txt -------------------------------------------------------------------------------- /code/ch07f_exercises/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07f_exercises/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07f_exercises/RiffMates/bands/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07f_exercises/RiffMates/bands/admin.py -------------------------------------------------------------------------------- /code/ch07f_exercises/RiffMates/bands/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07f_exercises/RiffMates/bands/apps.py -------------------------------------------------------------------------------- /code/ch07f_exercises/RiffMates/bands/forms.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07f_exercises/RiffMates/bands/forms.py -------------------------------------------------------------------------------- /code/ch07f_exercises/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07f_exercises/RiffMates/bands/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07f_exercises/RiffMates/bands/tests.py -------------------------------------------------------------------------------- /code/ch07f_exercises/RiffMates/bands/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07f_exercises/RiffMates/bands/urls.py -------------------------------------------------------------------------------- /code/ch07f_exercises/RiffMates/bands/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07f_exercises/RiffMates/bands/views.py -------------------------------------------------------------------------------- /code/ch07f_exercises/RiffMates/content/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07f_exercises/RiffMates/content/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07f_exercises/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07f_exercises/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07f_exercises/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch07f_exercises/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07f_exercises/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch07f_exercises/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch07f_exercises/RiffMates/home/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07f_exercises/RiffMates/home/models.py -------------------------------------------------------------------------------- /code/ch07f_exercises/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07f_exercises/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch07f_exercises/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07f_exercises/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch07f_exercises/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch07f_exercises/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch08a_tests/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch08a_tests/RiffMates/RiffMates/asgi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08a_tests/RiffMates/RiffMates/asgi.py -------------------------------------------------------------------------------- /code/ch08a_tests/RiffMates/RiffMates/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08a_tests/RiffMates/RiffMates/urls.py -------------------------------------------------------------------------------- /code/ch08a_tests/RiffMates/RiffMates/wsgi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08a_tests/RiffMates/RiffMates/wsgi.py -------------------------------------------------------------------------------- /code/ch08a_tests/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch08a_tests/RiffMates/bands/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08a_tests/RiffMates/bands/admin.py -------------------------------------------------------------------------------- /code/ch08a_tests/RiffMates/bands/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08a_tests/RiffMates/bands/apps.py -------------------------------------------------------------------------------- /code/ch08a_tests/RiffMates/bands/forms.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08a_tests/RiffMates/bands/forms.py -------------------------------------------------------------------------------- /code/ch08a_tests/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch08a_tests/RiffMates/bands/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08a_tests/RiffMates/bands/models.py -------------------------------------------------------------------------------- /code/ch08a_tests/RiffMates/bands/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08a_tests/RiffMates/bands/tests.py -------------------------------------------------------------------------------- /code/ch08a_tests/RiffMates/bands/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08a_tests/RiffMates/bands/urls.py -------------------------------------------------------------------------------- /code/ch08a_tests/RiffMates/bands/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08a_tests/RiffMates/bands/views.py -------------------------------------------------------------------------------- /code/ch08a_tests/RiffMates/content/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch08a_tests/RiffMates/content/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08a_tests/RiffMates/content/admin.py -------------------------------------------------------------------------------- /code/ch08a_tests/RiffMates/content/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08a_tests/RiffMates/content/apps.py -------------------------------------------------------------------------------- /code/ch08a_tests/RiffMates/content/forms.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08a_tests/RiffMates/content/forms.py -------------------------------------------------------------------------------- /code/ch08a_tests/RiffMates/content/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch08a_tests/RiffMates/content/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08a_tests/RiffMates/content/models.py -------------------------------------------------------------------------------- /code/ch08a_tests/RiffMates/content/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08a_tests/RiffMates/content/urls.py -------------------------------------------------------------------------------- /code/ch08a_tests/RiffMates/content/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08a_tests/RiffMates/content/views.py -------------------------------------------------------------------------------- /code/ch08a_tests/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch08a_tests/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08a_tests/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch08a_tests/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08a_tests/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch08a_tests/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch08a_tests/RiffMates/home/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08a_tests/RiffMates/home/models.py -------------------------------------------------------------------------------- /code/ch08a_tests/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08a_tests/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch08a_tests/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08a_tests/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch08a_tests/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08a_tests/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch08a_tests/RiffMates/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08a_tests/RiffMates/requirements.txt -------------------------------------------------------------------------------- /code/ch08b_exercises/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch08b_exercises/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch08b_exercises/RiffMates/bands/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08b_exercises/RiffMates/bands/admin.py -------------------------------------------------------------------------------- /code/ch08b_exercises/RiffMates/bands/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08b_exercises/RiffMates/bands/apps.py -------------------------------------------------------------------------------- /code/ch08b_exercises/RiffMates/bands/forms.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08b_exercises/RiffMates/bands/forms.py -------------------------------------------------------------------------------- /code/ch08b_exercises/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch08b_exercises/RiffMates/bands/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08b_exercises/RiffMates/bands/tests.py -------------------------------------------------------------------------------- /code/ch08b_exercises/RiffMates/bands/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08b_exercises/RiffMates/bands/urls.py -------------------------------------------------------------------------------- /code/ch08b_exercises/RiffMates/bands/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08b_exercises/RiffMates/bands/views.py -------------------------------------------------------------------------------- /code/ch08b_exercises/RiffMates/content/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch08b_exercises/RiffMates/content/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch08b_exercises/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch08b_exercises/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08b_exercises/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch08b_exercises/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08b_exercises/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch08b_exercises/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch08b_exercises/RiffMates/home/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08b_exercises/RiffMates/home/models.py -------------------------------------------------------------------------------- /code/ch08b_exercises/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08b_exercises/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch08b_exercises/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08b_exercises/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch08b_exercises/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch08b_exercises/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch09a_commands/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch09a_commands/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch09a_commands/RiffMates/bands/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch09a_commands/RiffMates/bands/admin.py -------------------------------------------------------------------------------- /code/ch09a_commands/RiffMates/bands/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch09a_commands/RiffMates/bands/apps.py -------------------------------------------------------------------------------- /code/ch09a_commands/RiffMates/bands/forms.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch09a_commands/RiffMates/bands/forms.py -------------------------------------------------------------------------------- /code/ch09a_commands/RiffMates/bands/management/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch09a_commands/RiffMates/bands/management/commands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch09a_commands/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch09a_commands/RiffMates/bands/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch09a_commands/RiffMates/bands/urls.py -------------------------------------------------------------------------------- /code/ch09a_commands/RiffMates/content/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch09a_commands/RiffMates/content/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch09a_commands/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch09a_commands/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch09a_commands/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch09a_commands/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch09a_commands/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch09a_commands/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch09a_commands/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch09a_commands/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch09a_commands/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch09a_commands/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch09a_commands/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch09a_commands/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch09b_options/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch09b_options/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch09b_options/RiffMates/bands/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch09b_options/RiffMates/bands/admin.py -------------------------------------------------------------------------------- /code/ch09b_options/RiffMates/bands/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch09b_options/RiffMates/bands/apps.py -------------------------------------------------------------------------------- /code/ch09b_options/RiffMates/bands/forms.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch09b_options/RiffMates/bands/forms.py -------------------------------------------------------------------------------- /code/ch09b_options/RiffMates/bands/management/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch09b_options/RiffMates/bands/management/commands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch09b_options/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch09b_options/RiffMates/bands/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch09b_options/RiffMates/bands/tests.py -------------------------------------------------------------------------------- /code/ch09b_options/RiffMates/bands/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch09b_options/RiffMates/bands/urls.py -------------------------------------------------------------------------------- /code/ch09b_options/RiffMates/bands/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch09b_options/RiffMates/bands/views.py -------------------------------------------------------------------------------- /code/ch09b_options/RiffMates/content/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch09b_options/RiffMates/content/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch09b_options/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch09b_options/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch09b_options/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch09b_options/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch09b_options/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch09b_options/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch09b_options/RiffMates/home/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch09b_options/RiffMates/home/models.py -------------------------------------------------------------------------------- /code/ch09b_options/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch09b_options/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch09b_options/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch09b_options/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch09b_options/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch09b_options/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch09c_exercises/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch09c_exercises/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch09c_exercises/RiffMates/bands/management/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch09c_exercises/RiffMates/bands/management/commands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch09c_exercises/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch09c_exercises/RiffMates/content/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch09c_exercises/RiffMates/content/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch09c_exercises/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch09c_exercises/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch09c_exercises/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch09c_exercises/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch09c_exercises/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch09c_exercises/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch10a_promoter/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10a_promoter/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10a_promoter/RiffMates/bands/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10a_promoter/RiffMates/bands/apps.py -------------------------------------------------------------------------------- /code/ch10a_promoter/RiffMates/bands/management/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10a_promoter/RiffMates/bands/management/commands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10a_promoter/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10a_promoter/RiffMates/bands/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10a_promoter/RiffMates/bands/urls.py -------------------------------------------------------------------------------- /code/ch10a_promoter/RiffMates/content/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10a_promoter/RiffMates/content/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10a_promoter/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10a_promoter/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10a_promoter/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch10a_promoter/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10a_promoter/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch10a_promoter/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10a_promoter/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10a_promoter/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch10a_promoter/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10a_promoter/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch10a_promoter/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10a_promoter/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch10a_promoter/RiffMates/promoters/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10a_promoter/RiffMates/promoters/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10b_famous/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10b_famous/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10b_famous/RiffMates/bands/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10b_famous/RiffMates/bands/admin.py -------------------------------------------------------------------------------- /code/ch10b_famous/RiffMates/bands/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10b_famous/RiffMates/bands/apps.py -------------------------------------------------------------------------------- /code/ch10b_famous/RiffMates/bands/forms.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10b_famous/RiffMates/bands/forms.py -------------------------------------------------------------------------------- /code/ch10b_famous/RiffMates/bands/management/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10b_famous/RiffMates/bands/management/commands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10b_famous/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10b_famous/RiffMates/bands/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10b_famous/RiffMates/bands/models.py -------------------------------------------------------------------------------- /code/ch10b_famous/RiffMates/bands/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10b_famous/RiffMates/bands/tests.py -------------------------------------------------------------------------------- /code/ch10b_famous/RiffMates/bands/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10b_famous/RiffMates/bands/urls.py -------------------------------------------------------------------------------- /code/ch10b_famous/RiffMates/bands/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10b_famous/RiffMates/bands/views.py -------------------------------------------------------------------------------- /code/ch10b_famous/RiffMates/content/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10b_famous/RiffMates/content/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10b_famous/RiffMates/content/apps.py -------------------------------------------------------------------------------- /code/ch10b_famous/RiffMates/content/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10b_famous/RiffMates/content/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10b_famous/RiffMates/content/urls.py -------------------------------------------------------------------------------- /code/ch10b_famous/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10b_famous/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10b_famous/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch10b_famous/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10b_famous/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch10b_famous/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10b_famous/RiffMates/home/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10b_famous/RiffMates/home/models.py -------------------------------------------------------------------------------- /code/ch10b_famous/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10b_famous/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch10b_famous/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10b_famous/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch10b_famous/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10b_famous/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch10b_famous/RiffMates/promoters/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10b_famous/RiffMates/promoters/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10c_fullname/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10c_fullname/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10c_fullname/RiffMates/bands/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10c_fullname/RiffMates/bands/apps.py -------------------------------------------------------------------------------- /code/ch10c_fullname/RiffMates/bands/management/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10c_fullname/RiffMates/bands/management/commands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10c_fullname/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10c_fullname/RiffMates/bands/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10c_fullname/RiffMates/bands/urls.py -------------------------------------------------------------------------------- /code/ch10c_fullname/RiffMates/content/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10c_fullname/RiffMates/content/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10c_fullname/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10c_fullname/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10c_fullname/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch10c_fullname/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10c_fullname/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch10c_fullname/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10c_fullname/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10c_fullname/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch10c_fullname/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10c_fullname/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch10c_fullname/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10c_fullname/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch10c_fullname/RiffMates/promoters/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10c_fullname/RiffMates/promoters/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10d_onlyfull/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10d_onlyfull/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10d_onlyfull/RiffMates/bands/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10d_onlyfull/RiffMates/bands/apps.py -------------------------------------------------------------------------------- /code/ch10d_onlyfull/RiffMates/bands/management/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10d_onlyfull/RiffMates/bands/management/commands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10d_onlyfull/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10d_onlyfull/RiffMates/bands/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10d_onlyfull/RiffMates/bands/urls.py -------------------------------------------------------------------------------- /code/ch10d_onlyfull/RiffMates/content/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10d_onlyfull/RiffMates/content/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10d_onlyfull/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10d_onlyfull/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10d_onlyfull/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch10d_onlyfull/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10d_onlyfull/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch10d_onlyfull/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10d_onlyfull/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10d_onlyfull/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch10d_onlyfull/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10d_onlyfull/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch10d_onlyfull/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10d_onlyfull/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch10d_onlyfull/RiffMates/promoters/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10d_onlyfull/RiffMates/promoters/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10e_birth/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10e_birth/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10e_birth/RiffMates/bands/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10e_birth/RiffMates/bands/admin.py -------------------------------------------------------------------------------- /code/ch10e_birth/RiffMates/bands/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10e_birth/RiffMates/bands/apps.py -------------------------------------------------------------------------------- /code/ch10e_birth/RiffMates/bands/forms.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10e_birth/RiffMates/bands/forms.py -------------------------------------------------------------------------------- /code/ch10e_birth/RiffMates/bands/management/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10e_birth/RiffMates/bands/management/commands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10e_birth/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10e_birth/RiffMates/bands/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10e_birth/RiffMates/bands/models.py -------------------------------------------------------------------------------- /code/ch10e_birth/RiffMates/bands/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10e_birth/RiffMates/bands/tests.py -------------------------------------------------------------------------------- /code/ch10e_birth/RiffMates/bands/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10e_birth/RiffMates/bands/urls.py -------------------------------------------------------------------------------- /code/ch10e_birth/RiffMates/bands/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10e_birth/RiffMates/bands/views.py -------------------------------------------------------------------------------- /code/ch10e_birth/RiffMates/content/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10e_birth/RiffMates/content/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10e_birth/RiffMates/content/admin.py -------------------------------------------------------------------------------- /code/ch10e_birth/RiffMates/content/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10e_birth/RiffMates/content/apps.py -------------------------------------------------------------------------------- /code/ch10e_birth/RiffMates/content/forms.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10e_birth/RiffMates/content/forms.py -------------------------------------------------------------------------------- /code/ch10e_birth/RiffMates/content/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10e_birth/RiffMates/content/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10e_birth/RiffMates/content/urls.py -------------------------------------------------------------------------------- /code/ch10e_birth/RiffMates/content/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10e_birth/RiffMates/content/views.py -------------------------------------------------------------------------------- /code/ch10e_birth/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10e_birth/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10e_birth/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch10e_birth/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10e_birth/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch10e_birth/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10e_birth/RiffMates/home/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10e_birth/RiffMates/home/models.py -------------------------------------------------------------------------------- /code/ch10e_birth/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10e_birth/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch10e_birth/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10e_birth/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch10e_birth/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10e_birth/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch10e_birth/RiffMates/promoters/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10e_birth/RiffMates/promoters/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10e_birth/RiffMates/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10e_birth/RiffMates/requirements.txt -------------------------------------------------------------------------------- /code/ch10f_death/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10f_death/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10f_death/RiffMates/bands/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10f_death/RiffMates/bands/admin.py -------------------------------------------------------------------------------- /code/ch10f_death/RiffMates/bands/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10f_death/RiffMates/bands/apps.py -------------------------------------------------------------------------------- /code/ch10f_death/RiffMates/bands/forms.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10f_death/RiffMates/bands/forms.py -------------------------------------------------------------------------------- /code/ch10f_death/RiffMates/bands/management/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10f_death/RiffMates/bands/management/commands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10f_death/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10f_death/RiffMates/bands/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10f_death/RiffMates/bands/models.py -------------------------------------------------------------------------------- /code/ch10f_death/RiffMates/bands/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10f_death/RiffMates/bands/tests.py -------------------------------------------------------------------------------- /code/ch10f_death/RiffMates/bands/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10f_death/RiffMates/bands/urls.py -------------------------------------------------------------------------------- /code/ch10f_death/RiffMates/bands/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10f_death/RiffMates/bands/views.py -------------------------------------------------------------------------------- /code/ch10f_death/RiffMates/content/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10f_death/RiffMates/content/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10f_death/RiffMates/content/admin.py -------------------------------------------------------------------------------- /code/ch10f_death/RiffMates/content/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10f_death/RiffMates/content/apps.py -------------------------------------------------------------------------------- /code/ch10f_death/RiffMates/content/forms.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10f_death/RiffMates/content/forms.py -------------------------------------------------------------------------------- /code/ch10f_death/RiffMates/content/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10f_death/RiffMates/content/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10f_death/RiffMates/content/urls.py -------------------------------------------------------------------------------- /code/ch10f_death/RiffMates/content/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10f_death/RiffMates/content/views.py -------------------------------------------------------------------------------- /code/ch10f_death/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10f_death/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10f_death/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch10f_death/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10f_death/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch10f_death/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10f_death/RiffMates/home/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10f_death/RiffMates/home/models.py -------------------------------------------------------------------------------- /code/ch10f_death/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10f_death/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch10f_death/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10f_death/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch10f_death/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10f_death/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch10f_death/RiffMates/promoters/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10f_death/RiffMates/promoters/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10f_death/RiffMates/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10f_death/RiffMates/requirements.txt -------------------------------------------------------------------------------- /code/ch10g_squash/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10g_squash/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10g_squash/RiffMates/bands/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10g_squash/RiffMates/bands/admin.py -------------------------------------------------------------------------------- /code/ch10g_squash/RiffMates/bands/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10g_squash/RiffMates/bands/apps.py -------------------------------------------------------------------------------- /code/ch10g_squash/RiffMates/bands/forms.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10g_squash/RiffMates/bands/forms.py -------------------------------------------------------------------------------- /code/ch10g_squash/RiffMates/bands/management/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10g_squash/RiffMates/bands/management/commands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10g_squash/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10g_squash/RiffMates/bands/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10g_squash/RiffMates/bands/models.py -------------------------------------------------------------------------------- /code/ch10g_squash/RiffMates/bands/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10g_squash/RiffMates/bands/tests.py -------------------------------------------------------------------------------- /code/ch10g_squash/RiffMates/bands/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10g_squash/RiffMates/bands/urls.py -------------------------------------------------------------------------------- /code/ch10g_squash/RiffMates/bands/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10g_squash/RiffMates/bands/views.py -------------------------------------------------------------------------------- /code/ch10g_squash/RiffMates/content/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10g_squash/RiffMates/content/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10g_squash/RiffMates/content/apps.py -------------------------------------------------------------------------------- /code/ch10g_squash/RiffMates/content/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10g_squash/RiffMates/content/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10g_squash/RiffMates/content/urls.py -------------------------------------------------------------------------------- /code/ch10g_squash/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10g_squash/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10g_squash/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch10g_squash/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10g_squash/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch10g_squash/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10g_squash/RiffMates/home/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10g_squash/RiffMates/home/models.py -------------------------------------------------------------------------------- /code/ch10g_squash/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10g_squash/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch10g_squash/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10g_squash/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch10g_squash/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10g_squash/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch10g_squash/RiffMates/promoters/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10g_squash/RiffMates/promoters/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10h_exercises/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10h_exercises/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10h_exercises/RiffMates/bands/management/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10h_exercises/RiffMates/bands/management/commands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10h_exercises/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10h_exercises/RiffMates/content/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10h_exercises/RiffMates/content/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10h_exercises/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10h_exercises/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10h_exercises/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch10h_exercises/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10h_exercises/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch10h_exercises/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch10h_exercises/RiffMates/promoters/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch10h_exercises/RiffMates/promoters/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/api_auth.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch11a_ninja/RiffMates/api_auth.py -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/bands/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch11a_ninja/RiffMates/bands/admin.py -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/bands/api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch11a_ninja/RiffMates/bands/api.py -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/bands/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch11a_ninja/RiffMates/bands/apps.py -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/bands/forms.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch11a_ninja/RiffMates/bands/forms.py -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/bands/management/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/bands/management/commands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/bands/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch11a_ninja/RiffMates/bands/models.py -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/bands/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch11a_ninja/RiffMates/bands/tests.py -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/bands/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch11a_ninja/RiffMates/bands/urls.py -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/bands/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch11a_ninja/RiffMates/bands/views.py -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/content/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/content/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch11a_ninja/RiffMates/content/admin.py -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/content/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch11a_ninja/RiffMates/content/apps.py -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/content/forms.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch11a_ninja/RiffMates/content/forms.py -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/content/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/content/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch11a_ninja/RiffMates/content/urls.py -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/content/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch11a_ninja/RiffMates/content/views.py -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch11a_ninja/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/home/api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch11a_ninja/RiffMates/home/api.py -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch11a_ninja/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/home/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch11a_ninja/RiffMates/home/models.py -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch11a_ninja/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch11a_ninja/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch11a_ninja/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/promoters/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/promoters/api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch11a_ninja/RiffMates/promoters/api.py -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/promoters/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch11a_ninja/RiffMates/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch11a_ninja/RiffMates/requirements.txt -------------------------------------------------------------------------------- /code/ch11b_exercises/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch11b_exercises/RiffMates/api_auth.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch11b_exercises/RiffMates/api_auth.py -------------------------------------------------------------------------------- /code/ch11b_exercises/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch11b_exercises/RiffMates/bands/api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch11b_exercises/RiffMates/bands/api.py -------------------------------------------------------------------------------- /code/ch11b_exercises/RiffMates/bands/management/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch11b_exercises/RiffMates/bands/management/commands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch11b_exercises/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch11b_exercises/RiffMates/content/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch11b_exercises/RiffMates/content/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch11b_exercises/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch11b_exercises/RiffMates/home/api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch11b_exercises/RiffMates/home/api.py -------------------------------------------------------------------------------- /code/ch11b_exercises/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch11b_exercises/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch11b_exercises/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch11b_exercises/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch11b_exercises/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch11b_exercises/RiffMates/promoters/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch11b_exercises/RiffMates/promoters/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/RiffMates/asgi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12a_htmx/RiffMates/RiffMates/asgi.py -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/RiffMates/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12a_htmx/RiffMates/RiffMates/urls.py -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/RiffMates/wsgi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12a_htmx/RiffMates/RiffMates/wsgi.py -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/api_auth.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12a_htmx/RiffMates/api_auth.py -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/bands/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12a_htmx/RiffMates/bands/admin.py -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/bands/api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12a_htmx/RiffMates/bands/api.py -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/bands/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12a_htmx/RiffMates/bands/apps.py -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/bands/forms.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12a_htmx/RiffMates/bands/forms.py -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/bands/management/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/bands/management/commands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/bands/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12a_htmx/RiffMates/bands/models.py -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/bands/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12a_htmx/RiffMates/bands/tests.py -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/bands/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12a_htmx/RiffMates/bands/urls.py -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/bands/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12a_htmx/RiffMates/bands/views.py -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/content/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/content/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12a_htmx/RiffMates/content/admin.py -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/content/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12a_htmx/RiffMates/content/apps.py -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/content/forms.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12a_htmx/RiffMates/content/forms.py -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/content/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/content/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12a_htmx/RiffMates/content/models.py -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/content/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12a_htmx/RiffMates/content/urls.py -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/content/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12a_htmx/RiffMates/content/views.py -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12a_htmx/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/home/api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12a_htmx/RiffMates/home/api.py -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12a_htmx/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/home/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12a_htmx/RiffMates/home/models.py -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12a_htmx/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12a_htmx/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12a_htmx/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/promoters/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/promoters/api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12a_htmx/RiffMates/promoters/api.py -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/promoters/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12a_htmx/RiffMates/promoters/apps.py -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/promoters/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/promoters/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12a_htmx/RiffMates/promoters/urls.py -------------------------------------------------------------------------------- /code/ch12a_htmx/RiffMates/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12a_htmx/RiffMates/requirements.txt -------------------------------------------------------------------------------- /code/ch12b_exercises/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch12b_exercises/RiffMates/api_auth.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12b_exercises/RiffMates/api_auth.py -------------------------------------------------------------------------------- /code/ch12b_exercises/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch12b_exercises/RiffMates/bands/api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12b_exercises/RiffMates/bands/api.py -------------------------------------------------------------------------------- /code/ch12b_exercises/RiffMates/bands/management/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch12b_exercises/RiffMates/bands/management/commands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch12b_exercises/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch12b_exercises/RiffMates/content/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch12b_exercises/RiffMates/content/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch12b_exercises/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch12b_exercises/RiffMates/home/api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12b_exercises/RiffMates/home/api.py -------------------------------------------------------------------------------- /code/ch12b_exercises/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12b_exercises/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch12b_exercises/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch12b_exercises/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch12b_exercises/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch12b_exercises/RiffMates/promoters/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch12b_exercises/RiffMates/promoters/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/api_auth.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch13a_power/RiffMates/api_auth.py -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/bands/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch13a_power/RiffMates/bands/admin.py -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/bands/api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch13a_power/RiffMates/bands/api.py -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/bands/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch13a_power/RiffMates/bands/apps.py -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/bands/forms.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch13a_power/RiffMates/bands/forms.py -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/bands/management/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/bands/management/commands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/bands/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch13a_power/RiffMates/bands/models.py -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/bands/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch13a_power/RiffMates/bands/tests.py -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/bands/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch13a_power/RiffMates/bands/urls.py -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/bands/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch13a_power/RiffMates/bands/views.py -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/content/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/content/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch13a_power/RiffMates/content/admin.py -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/content/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch13a_power/RiffMates/content/apps.py -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/content/forms.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch13a_power/RiffMates/content/forms.py -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/content/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/content/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch13a_power/RiffMates/content/urls.py -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/content/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch13a_power/RiffMates/content/views.py -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch13a_power/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/home/api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch13a_power/RiffMates/home/api.py -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch13a_power/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/home/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch13a_power/RiffMates/home/models.py -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch13a_power/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch13a_power/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch13a_power/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/promoters/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/promoters/api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch13a_power/RiffMates/promoters/api.py -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/promoters/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch13a_power/RiffMates/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch13a_power/RiffMates/requirements.txt -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/RiffMates/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/RiffMates/asgi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch99_final/RiffMates/RiffMates/asgi.py -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/RiffMates/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch99_final/RiffMates/RiffMates/urls.py -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/RiffMates/wsgi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch99_final/RiffMates/RiffMates/wsgi.py -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/api_auth.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch99_final/RiffMates/api_auth.py -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/bands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/bands/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch99_final/RiffMates/bands/admin.py -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/bands/api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch99_final/RiffMates/bands/api.py -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/bands/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch99_final/RiffMates/bands/apps.py -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/bands/forms.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch99_final/RiffMates/bands/forms.py -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/bands/management/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/bands/management/commands/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/bands/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/bands/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch99_final/RiffMates/bands/models.py -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/bands/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch99_final/RiffMates/bands/tests.py -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/bands/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch99_final/RiffMates/bands/urls.py -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/bands/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch99_final/RiffMates/bands/views.py -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/content/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/content/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch99_final/RiffMates/content/admin.py -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/content/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch99_final/RiffMates/content/apps.py -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/content/forms.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch99_final/RiffMates/content/forms.py -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/content/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/content/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch99_final/RiffMates/content/models.py -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/content/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch99_final/RiffMates/content/urls.py -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/content/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch99_final/RiffMates/content/views.py -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/home/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/home/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch99_final/RiffMates/home/admin.py -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/home/api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch99_final/RiffMates/home/api.py -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/home/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch99_final/RiffMates/home/apps.py -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/home/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/home/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch99_final/RiffMates/home/models.py -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/home/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch99_final/RiffMates/home/tests.py -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/home/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch99_final/RiffMates/home/views.py -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch99_final/RiffMates/manage.py -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/promoters/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/promoters/api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch99_final/RiffMates/promoters/api.py -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/promoters/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch99_final/RiffMates/promoters/apps.py -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/promoters/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/promoters/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch99_final/RiffMates/promoters/urls.py -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch99_final/RiffMates/requirements.txt -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/tests/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch99_final/RiffMates/tests/README.md -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/tests/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /code/ch99_final/RiffMates/tests/test_all.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/code/ch99_final/RiffMates/tests/test_all.py -------------------------------------------------------------------------------- /cover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cltrudeau/django-in-action/HEAD/cover.png --------------------------------------------------------------------------------