这是我的Django模型
class author(models.Model):
name = models.CharField('name',max_length=140)
datamode = models.CharField(max_length=1, default='A', choices=DATAMODE_CHOICE)
def __str__(self):
return '%s' % (self.name)
Run Code Online (Sandbox Code Playgroud)
虽然我author在另一个类中使用此类作为外键,如下所示:
class books(models.Model):
NEW_FLAG=(('N','New'),('O','Old'))
name = models.CharField('name',max_length=140)
author = models.ForeignKey(author, blank=True, null=True)
Run Code Online (Sandbox Code Playgroud)
当我在管理员中输入新书详细信息时,它显示:
IntegrityError: Column 'author_id' cannot be null.
Run Code Online (Sandbox Code Playgroud) 我必须将views.py文件中的"is_staff"选项更改为禁用Django-admin页面,但我无法弄清楚以下问题.每当我试图写"user.is_staff"时,它听起来没有任何选择它(is_staff),而is_active存在.是这个导入的问题?
以下是我导入的内容:
from django.contrib.auth.decorators import login_required
from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger
from django.contrib.auth.models import User
from django.http import HttpResponseForbidden, HttpResponse
from django.shortcuts import get_object_or_404
from django.views.generic.list_detail import object_detail
from django.views.generic.simple import direct_to_template
from django.utils.translation import ugettext as _
from django.core.mail import send_mail
from django.core.urlresolvers import reverse
from django.http import HttpResponseRedirect
from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger
from django.contrib import admin
from django.contrib.auth.admin import UserAdmin
Run Code Online (Sandbox Code Playgroud)
以下代码我在views.py中写道:
def user_change_status(request, id):
user = User.objects.get(pk=id)
if user.is_staff:
user.is_staff = False
else:
user.is_active = …Run Code Online (Sandbox Code Playgroud) 在我的 admin.py 中,这一行,
admin.site.register(Post)
Run Code Online (Sandbox Code Playgroud)
给出错误:
NameError: name 'Post' is not defined
Run Code Online (Sandbox Code Playgroud)
我有以下代码:
from django.contrib import admin
from test_app.models import Master, Detail
class DetailInline(admin.TabularInline):
model = Detail
class MasterAdmin(admin.ModelAdmin):
inlines = [DetailInline]
admin.register(Master, MasterAdmin)
Run Code Online (Sandbox Code Playgroud)
但是不知何故,它不会显示在django管理员索引页面中。
列出了其他应用程序,它们的admin.py文件看起来类似。
此代码有什么问题?
环境:
请求方式:GET 请求地址:http : //127.0.0.1 : 8000/admin/
Django 版本:1.10.6 Python 版本:3.6.0 已安装的应用程序:['music.apps.MusicConfig'、'django.contrib.admin'、'django.contrib.auth'、'django.contrib.contenttypes'、'django .contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles'] 安装的中间件:['django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django .middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middlesiddleFrameOptions ']
追溯:
文件“C:\Users\Dell Laptop\AppData\Local\Programs\Python\Python36-32\lib\site-packages\django-1.10.6-py3.6.egg\django\core\handlers\exception.py”在内部 42. response = get_response(request)
文件“C:\Users\Dell Laptop\AppData\Local\Programs\Python\Python36-32\lib\site-packages\django-1.10.6-py3.6.egg\django\core\handlers\base.py”在 _legacy_get_response 249. response = self._get_response(request)
文件“C:\Users\Dell Laptop\AppData\Local\Programs\Python\Python36-32\lib\site-packages\django-1.10.6-py3.6.egg\django\core\handlers\base.py”在_get_response 187. response = self.process_exception_by_middleware(e, request)
文件“C:\Users\Dell Laptop\AppData\Local\Programs\Python\Python36-32\lib\site-packages\django-1.10.6-py3.6.egg\django\core\handlers\base.py”在_get_response 185.响应=wrapped_callback(请求,*callback_args,**callback_kwargs)
文件“C:\Users\Dell Laptop\AppData\Local\Programs\Python\Python36-32\lib\site-packages\django-1.10.6-py3.6.egg\django\contrib\admin\sites.py”在包装器 229 中。返回 self.admin_view(view, cacheable)(*args, **kwargs)
_wrapped_view 中的文件“C:\Users\Dell Laptop\AppData\Local\Programs\Python\Python36-32\lib\site-packages\django-1.10.6-py3.6.egg\django\utils\decorators.py” 149. response = view_func(request, *args, **kwargs)
文件“C:\Users\Dell Laptop\AppData\Local\Programs\Python\Python36-32\lib\site-packages\django-1.10.6-py3.6.egg\django\views\decorators\cache.py”在 _wrapped_view_func 57. response = view_func(request, *args, **kwargs)
文件“C:\Users\Dell Laptop\AppData\Local\Programs\Python\Python36-32\lib\site-packages\django-1.10.6-py3.6.egg\django\contrib\admin\sites.py”在内部 211. return view(request, *args, …
我想在 Django 模板中实现像 admin TabularInline 表单这样的表单。(我认为我们需要inlineformset_factory这种表单和 jquery 来动态添加删除按钮。)
这是我的模型:
模型.py
from django.db import models
class Profile(models.Model):
first_name = models.CharField(max_length=100)
last_name = models.CharField(max_length=100)
created_date = models.DateTimeField(default=timezone.now)
def get_absolute_url(self):
return reverse('profile-update', kwargs={'pk': self.pk})
def __str__(self):
return f"{self.first_name} {self.last_name}"
class FamilyMember(models.Model):
profile = models.ForeignKey(Profile, on_delete=models.CASCADE)
name = models.CharField(max_length=100)
relationship = models.CharField(max_length=100)
def __str__(self):
return self.name
Run Code Online (Sandbox Code Playgroud)
如果您能在评论中指导我找到解决方案,我也将不胜感激。
提前致谢。
如何使用django框架在ubuntu平台上编写python代码.也可以在windows平台上使用django来编写python代码吗?可以将django与eclipse一起使用(我在我的eclipse IDE中插入了PyDev).谢谢.
django-admin ×7
django ×6
python ×3
django-forms ×1
django-views ×1
eclipse ×1
python-3.5 ×1
python-3.x ×1
typeerror ×1