1
尝试使用的创建对象将数据插入到与外键的蟒蛇模型,得到一个“用户”的对象没有属性“__getitem__”有没有属性“的GetItem”“用户”对象对创建对象
从django.db进口车型 从..loginRegistration_app.modelsmodels.py
从未来进口unicode_literals 导入用户
class PostManager(models.Manager):
error_list = []
def post_in(self, postData, user_id):
if len(postData['post']) < 1:
context = {'status':0}
return context
else:
curr_user = User.objects.get(id = user_id)
# print curr_user.last_name
self.create(secrets = postData['post'], users_id = curr_user['id'])
class Like(models.Model):
like = models.BooleanField()
users = models.ForeignKey(User, related_name = 'user_likes')
created_at = models.DateTimeField(auto_now_add = True)
upated_at = models.DateTimeField(auto_now = True)
class Secret(models.Model):
secret = models.TextField(max_length = 1000)
likes = models.ForeignKey(Like, related_name = 'all_likes')
users = models.ForeignKey(User, related_name = 'user_secrets')
created_at = models.DateTimeField(auto_now_add = True)
upated_at = models.DateTimeField(auto_now = True)
objects = PostManager()
views.py
from django.shortcuts import render, redirect
from .models import Secret
from django.contrib import messages
def index(request):
if 'user_id' not in request.session:
return redirect('main:home')
# put query to display most recent secrets
return render(request, 'dojo_secrets_app/index.html')
def post_it(request):
post_this = Secret.objects.post_in(request.POST, request.session['user_id'])
return redirect('secrets:home')
错误:
TypeError at /secrets/post_it
'User' object has no attribute '__getitem__'
self.create(secrets = postData['post'], users_id = curr_user['id'])