Найти - Пользователи
Полная версия: вопрос по Django & Sqlite3
Начало » Центр помощи » вопрос по Django & Sqlite3
1 2
eboome
Привет. Суть вопроса: В Джанго создаю БД sqlite3 для органайзера:

from django.db import models

class calendar_db(models.Model):
user_date = models.DateTimeField('user date')
user_task = models.CharField(max_length = 300)

Но мне нужно еще одно поле с возможностью выбора категории задачи(семя, работа, дом, друзья). как ето сделать?
FishHook
eboome
как ето сделать?
ForeignKey
eboome
FishHook
не понимаю к чему здесь связи?
решил так:
choices
('family', ‘семья’),
('home', ‘дом’)
)
some_field = models.CharField(choices=choices, max_length=6)
FishHook
Поймешь, когда запустишь проект и понадобится добавить категорию
eboome
немного переделал БД, и столкнулся с новыми проблемами:
вот код модели БД:
from django.db import models
from django.contrib.auth.models import User

task_types = (
('1', ‘category’),
('2', ‘event’),
)

class Tasks(models.Model):
pid = models.IntegerField(default = 0)
types = models.CharField(choices=task_types, max_length=1)
name = models.CharField(max_length = 100)
created = models.DateTimeField(auto_now_add=True)
start_date = models.DateTimeField(default = 0)
end_date = models.DateTimeField(default = 0)
comment = models.CharField(max_length = 300)
user_id = models.ForeignKey(User, related_name='userid')

Но когда я в админке Джанго пробкдк создать новую запись по получаю ошыбку:
DatabaseError at /admin/tasks/tasks/add/
no such table: django_admin_log
Request Method: POST
Request URL: http://127.0.0.1:8000/admin/tasks/tasks/add/
Django Version: 1.4.2
Exception Type: DatabaseError
Exception Value:
no such table: django_admin_log
Exception Location: /usr/local/lib/python2.7/dist-packages/django/db/backends/sqlite3/base.py in execute, line 344
Python Executable: /usr/bin/python
Python Version: 2.7.3
Python Path:
['/home/disk_e/task/organizer',
‘/usr/lib/python2.7’,
‘/usr/lib/python2.7/plat-linux2’,
‘/usr/lib/python2.7/lib-tk’,
‘/usr/lib/python2.7/lib-old’,
‘/usr/lib/python2.7/lib-dynload’,
‘/usr/local/lib/python2.7/dist-packages’,
‘/usr/lib/python2.7/dist-packages’,
‘/usr/lib/python2.7/dist-packages/PIL’,
‘/usr/lib/python2.7/dist-packages/gst-0.10’,
‘/usr/lib/python2.7/dist-packages/gtk-2.0’,
‘/usr/lib/pymodules/python2.7’,
‘/usr/lib/python2.7/dist-packages/ubuntu-sso-client’,
‘/usr/lib/python2.7/dist-packages/ubuntuone-client’,
‘/usr/lib/python2.7/dist-packages/ubuntuone-control-panel’,
‘/usr/lib/python2.7/dist-packages/ubuntuone-couch’,
‘/usr/lib/python2.7/dist-packages/ubuntuone-installer’,
‘/usr/lib/python2.7/dist-packages/ubuntuone-storage-protocol’]
Server time: Tue, 18 Jun 2013 16:00:05 -0500
JOHN_16
eboome
no such table: django_admin_log
нету таблицы, котая создается, возможно, когда вы подключаете приложение admin. Если так то вам нужно раскомментировать строки в settings.py в частности # ‘django.contrib.admin’.
Ну или что то другое=)
Ну а вообще вот:
CREATE TABLE "django_admin_log" (
    "id" integer NOT NULL PRIMARY KEY,
    "action_time" datetime NOT NULL,
    "user_id" integer NOT NULL REFERENCES "auth_user" ("id"),
    "content_type_id" integer REFERENCES "django_content_type" ("id"),
    "object_id" text,
    "object_repr" varchar(200) NOT NULL,
    "action_flag" smallint unsigned NOT NULL,
    "change_message" text NOT NULL
)
Singularity
Мне кажется надо выполнить syncdb после подключения админки.
eboome
Singularity
Мне кажется надо выполнить syncdb после подключения админки.
да, действительно, я упустил
eboome
ребята, ёще вопрос: я делаю представление - и мне нужно сделать так что б чтоб после имя юзера отображался список названий его заданий. я делал так:
def index(request):
    task_list = Tasks.objects.order_by('user_id')
    output = ',  '.join(  p.name for p in task_list ] )
    return HttpResponse(output)

но мне отображаеться только название всех заданий пользователей
ilnur
покажи модель Tasks.
task_list = Tasks.objects.order_by('user_id')
тут ты выбираешь все задания. А надо их отфильтровать.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB