Microtutoriais: mudanças entre as edições
Sem resumo de edição |
mSem resumo de edição |
||
Linha 1: | Linha 1: | ||
=Django1: Baixar e rodar em 3 comandos= | |||
Simplesme baixe o tar.gz do site e rode | Simplesme baixe o tar.gz do site e rode | ||
Linha 9: | Linha 9: | ||
pronto! só ir no endereço que o terminal soltou | pronto! só ir no endereço que o terminal soltou | ||
=Django2: Fazendo o bixinho acessar um BD.= | |||
$ python manage.py syncdb | $ python manage.py syncdb | ||
Linha 26: | Linha 26: | ||
=Django3: Suas tabelas de BD são classes= | |||
Crie um app: | Crie um app: | ||
Linha 71: | Linha 71: | ||
=Django4: Interlúdio na shell= | |||
(fim da parte 1 do tutorial oficial) | (fim da parte 1 do tutorial oficial) | ||
Linha 85: | Linha 85: | ||
etc... | etc... | ||
=Django5: Habilite seu Admin= | |||
(inicio da parte 2 do tutorial) | (inicio da parte 2 do tutorial) | ||
Linha 111: | Linha 111: | ||
Vualá seu admin tá rodando. Faz login aí, irmão. | Vualá seu admin tá rodando. Faz login aí, irmão. | ||
=Django6: Faça seu Admin responder= | |||
Depois de devidamente logado, | Depois de devidamente logado, | ||
Linha 158: | Linha 158: | ||
=Django7: Seu Admin é customizável completamente= | |||
(último da parte 2 do tutorial) | (último da parte 2 do tutorial) | ||
Edição das 10h33min de 18 de agosto de 2011
Django1: Baixar e rodar em 3 comandos
Simplesme baixe o tar.gz do site e rode
$ sudo python setup.py install
depois vá para um dir.. dê um
$ python django-admin.py startproject mysite
inicie o servidor (entra no diretório do projeto)
$ python manage.py runserver
pronto! só ir no endereço que o terminal soltou
Django2: Fazendo o bixinho acessar um BD.
$ python manage.py syncdb
dá pau até que vc arrume o
DATABASES = { 'default' :
do settings.py
Pode usar sqlite que fica imediato, mas eu arrumei um user mysql rapidinho.
Rode:
$ python manage.py syncdb
Até que não sintamos nada de mais pegando.
Django3: Suas tabelas de BD são classes
Crie um app:
$ python manage.py startapp sitezinhoCoxa
Coloque 'sitezinhoCoxa' no final da tupla INSTALLED_APPS do settings.py,
Crie estas duas classes no seu sitezinhoCoxa/models.py:
class Poll(models.Model): question = models.CharField(max_length=200) pub_date = models.DateTimeField('date published') class Choice(models.Model): poll = models.ForeignKey(Poll) choice = models.CharField(max_length=200) votes = models.IntegerField()
Relaxa, vai dar certo. Só falta rodar este comando:
$ python manage.py sql aexp CREATE TABLE `aexp_poll` ( `id` integer AUTO_INCREMENT NOT NULL PRIMARY KEY, `question` varchar(200) NOT NULL, `pub_date` datetime NOT NULL ) ; CREATE TABLE `aexp_choice` ( `id` integer AUTO_INCREMENT NOT NULL PRIMARY KEY, `poll_id` integer NOT NULL, `choice` varchar(200) NOT NULL, `votes` integer NOT NULL ) ;
Pronto! só dê um:
$ python manage.py syncdb
para seu projeto dar conta de usar a base de dados que vc fez.
Django4: Interlúdio na shell
(fim da parte 1 do tutorial oficial)
Para inicar uma shell com o ambiente bonitinho para fazer alterações na mão e colocar coisas nos BD:
$ python manage.py shell
Aí pode fazer coisas como:
[1]: from aexp.models import Poll, Choice [2]: p = Poll(question="What's up?", pub_date=datetime.datetime.now()) [3]: p.save() [4]: p.choice_set.create(choice='Not much', votes=0)
etc...
Django5: Habilite seu Admin
(inicio da parte 2 do tutorial)
Depois de descomentar 'django.contrib.admin' do INSTALLED_APPS do settings.py
$ python manage.py syncdb # porque estamos com um app novo, o admin
Aí é preciso habilitar a URL para acessar o admin, isso é feito no url.py descomentando as seguintes três linhas:
from django.contrib import admin admin.autodiscover() (r'^admin/', include(admin.site.urls)),
A última fica ao final do bloco identado.
Pronto. Inicie o server
$ python manage.py runserver
e vá para o endereço previsto, provavelmente:
http://127.0.0.1:8000/admin/
Vualá seu admin tá rodando. Faz login aí, irmão.
Django6: Faça seu Admin responder
Depois de devidamente logado,
Crie um arquivo admin.py no diretório do app que startou com startapp. Coloque as seguintes linhas neste arquivo admin.py:
from XXXX.models import Poll from XXXX.models import Choice from django.contrib import admin admin.site.register(Poll) <---------------- admin.site.register(Choice) <----------------
XXX você substitui por sitezinhoCoxa ou qualquer nome do app que você fez.
Recarregue a página e veja que o admin já possui uma entrada para o polls.
Troque:
admin.site.register(Poll) <---------------- admin.site.register(Choice) <----------------
por:
class ChoiceInline(admin.TabularInline):
model = Choice extra = 3
class PollAdmin(admin.ModelAdmin):
list_display = ('question', 'pub_date', 'was_published_today') fieldsets = [ (None, {'fields': ['question']}), ('Date information', {'fields': ['pub_date'], 'classes': ['collapse']}), ] inlines = [ChoiceInline] list_filter = ['pub_date'] search_fields = ['question'] date_hierarchy = 'pub_date'
admin.site.register(Poll, PollAdmin
E veja o resultado.
Django7: Seu Admin é customizável completamente
(último da parte 2 do tutorial)
no settings.py mude:
TEMPLATE_DIRS = (
"/home/XXXX/mytemplates", # Change this to your own directory.
)
XXXX é o que você quer.
copie coisas como:
django/contrib/admin/templates/admin/base_site.html
para
/home/XXXXX/mytemplates/admin/base_site.html.
e não veja a mudança alguma AINDA. Ou tente fuçar no base_site.html