我删除了一些与应用程序相关的表.并再次尝试syncdb命令
python manage.py syncdb
Run Code Online (Sandbox Code Playgroud)
它显示错误
django.db.utils.ProgrammingError: (1146, "Table 'someapp.feed' doesn't exist")
Run Code Online (Sandbox Code Playgroud)
models.py
class feed(models.Model):
user = models.ForeignKey(User,null=True,blank=True)
feed_text = models.CharField(max_length=2000)
date = models.CharField(max_length=30)
upvote = models.IntegerField(default=0)
downvote = models.IntegerField(default=0)
def __str__(self):
return feed.content
Run Code Online (Sandbox Code Playgroud)
我可以做些什么来获取该应用程序的表格?
我是Django的新手,我无法理解如何使用Django信号.任何人都可以用简单的例子解释" Django信号 "吗?
提前致谢.
我知道以下添加中间件的方法1)使用MIDDLEWARE_CLASSES向django添加自定义中间件组件
MIDDLEWARE_CLASSES = (
'......'
'path.to.custom.middlware',)
Run Code Online (Sandbox Code Playgroud)
2)使用decorate_from_middlware添加视图特定的中间件
cache_page = decorator_from_middleware(CacheMiddleware)
@cache_page(3600)
def my_view(request):
pass
Run Code Online (Sandbox Code Playgroud)
我的请求是如何创建特定于应用程序的中间件类
APPSPECIFIC_MIDDLEWARE_CLASSES = ( 'path.to.middlwareclass1',
'path.to.middlwareclass2',
'path.to.middlwareclass3', )
Run Code Online (Sandbox Code Playgroud)
middlwareclass是函数还是类?有没有使用url或任何其他方法来做到这一点.或者第二种方法是唯一的方法,并将所有中间件类分别添加到视图中?
更新:http: //python-social-auth.readthedocs.org/en/latest/pipeline.html与about应用程序一样,SOCIAL_AUTH_PIPELINE仅适用于社交应用程序.这与全球项目设置不同..
提前致谢
我收到类型错误,显示"不是JSON可序列化".添加会话相关代码后,会出现此错误.
views.py
def jlogin(request):
if request.method == 'POST':
username = request.POST['uname']
password = request.POST['pword']
user = authenticate(username=username, password=password)
if user is not None:
login(request,user)
print(user)
request.session['user']=user
return redirect('/feeds/')
else:
return render(request,'join/login.html')
else:
user = request.session.get('user')
print(user)
if user is None:
return render(request,'join/login.html')
else:
return render(request,'feeds/feeds.html')
Run Code Online (Sandbox Code Playgroud)
的login.html
<!DOCTYPE html>
<html>
<head>
<title>Login to dEEPsIGMA</title>
</head>
<body>
<form action="." method="post" enctype="multipart/form-data">
{% csrf_token %}
Username :
<input type="text" name="uname"/> <br>
Password :
<input type="text" name ="pword"/>
<input type="submit">
</form>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
追溯: …
我在发布请求中添加特定行时收到此错误。
views.py
class LoginVerify(View):
print('login')
email =""
pswd = ""
username =""
def post(self,request,*args,**kwargs):
print("post called")
self.email = request.POST['email']
self.pswd = request.POST['pswd']
self.username = User.objects.get(email=self.email).username
return HttpResponse("Invalid user")
Run Code Online (Sandbox Code Playgroud)
如果添加self.username = User.objects.get(email=self.email).username
,则显示错误,否则工作正常。
为什么会发生这种情况,我该如何解决呢?