web programming, interface for Iterameta
install Django
django-admin.py startproject mvp_landing # start the project ls # mvp_landing cd mvp_landing ls # manage.py mvp_landing
python manage.py syncdb superuser: yes
python manage.py runserver
python manage.py startapp signups
from django.db import models from django.utils.encoding import smart_unicode
class SignUp(models.Model): first_name = models.CharField(max_length=120, null=True, blank=True) last_name = models.CharField(max_length=120, null=True, blank=True) email = models.EmailField(null=False,blank=False) timestamp = models.DateTimeField(auto_now_add=True, auto_now=False) updated = models.DateTimeField(auto_now_add=False, auto_now=True)
def unicode(self): retrn smart_unicode(self.email)
INSTALLED_APPS.. 'signups',
python manage.py syncdb python manage.py runserver
from django.contrib import admin from .models import SignUp
class SignUpAdmin(admin.ModelAdmin): class Meta: model = SignUp
admin.site.register(SignUp, SignUpAdmin)
TEMPLATE_DIRS = ( os.path.join(os.path.dirname(BASE_DIR) 'static', 'templates'), )
</head>
<body>
<h1> Join now </h1>
<form method = 'POST' action=''>
<input type='text'>
<input type='submit'>
</body>
urlpatterns = patterns('', url(r'^$', 'signups.view.home', name='home'), ..)
from django.shortcuts import render, render_to_response, RequestContext
def home(request): return render_to_response('signup.html', locals(), context_instance=RequestContext(request))
from django import forms from .models import SignUp
class SignUpForm(forms.ModelForm): class Meta: model = SignUp
from .forms import SignUpForm
def home(request): form = SignUpForm(request.POST or None)
if form.is_valid(): save_it = form.save(commit=False) save_it.save()
return render_to_response('signup.html', locals(), context_instance=RequestContext(request))
</head>
<body>
<h1> Join now </h1>
<form method = 'POST' action=''> {% csrf_token %}
{{form.as_p}}
<input type='submit'>
</body>
if DEBUG: MEDIA_URL = '/media/' STATIC_ROOT = os.path.join(os.path.dirnam(BASE_DIR), 'static', 'static-only') MEDIA_ROOT = os.path.join(os.path.dirname(BASE_DIR), 'static', 'media') STATICFILES_DIRS = ( os.path.join(os.path.dirname(BASE_DIR), 'static', 'static') )
from django.conf import settings from django.conf.urls.static import static .. if settings.DEBUG: urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT) urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
python manage.py collectstatic pthon manage.py runserver
{% extends 'base.html' %}
{% blog content %}
{% crsf_token %} {{form.as_p}} {% endblock %}python manage.py collectstatic
{% extends 'base.html' %}
{% blog content %}
{% crsf_token %} {{form.as_p}} {% endblock %}// views.py from django.contrib import messages
from .forms import SignUpForm
def home(request): form = SignUpForm(request.POST or None)
if form.is_valid(): save_it = form.save(commit=False) save_it.save() messages.success(request, 'Thank you for joining')
return render_to_response('signup.html', locals(), context_instance=RequestContext(request))
// base.html
// 12/21: Django HTTP redirect and standard pages // views.py from django.shortcuts import render, render_to_response, RequestContext, HttpResponseRedirect from django.contrib import messages
from .forms import SignUpForm
def home(request): form = SignUpForm(request.POST or None)
if form.is_valid(): save_it = form.save(commit=False) save_it.save() messages.success(request, 'Thank you for joining') return HttpResponseRedirect('/thank-you/', 'signups.views.thankyou', name='thankyou') return render_to_response('signup.html', locals(), context_instance=RequestContext(request))
// urls.py url(r'^thank-you/$',)
// views.py def thankyou(request): return render_to_response('thankyou.html', locals(), context_instance=RequestContext(request))
// thankyou.html {% extends 'base.html' %}
{% block content %}
{% endblock %}
// 13/21 add & update twitter bootstrap navbar
// 14/21 add basic paypal button to Django project template
// 15/21 django update thank you page and view after paypal purchase
// django emailing send a confirmation email using gmail
// django 1.6 for Webfaction - setup Webfaction accounts to go live