小编van*_*lay的帖子

1062, "重复条目 '3' 键 'user_id'"

每当我尝试通过管理面板创建用户时,都会出现此错误。我不知道为什么。但如果我这样做,user = User.objects.create_user('aegon', 'g@ad.com', 'hehehe123')它会工作得很好。导致这种情况的任何提示?

我的数据库中 auth_user 只有一个用户。

在此处输入图片说明

错误:

django.db.utils.IntegrityError: (1062, "Duplicate entry '3' for key 'user_id'")
Run Code Online (Sandbox Code Playgroud)

我的模型:

class transaction(models.Model):
    amount = models.IntegerField()
    holding = models.ForeignKey(holding, on_delete=models.CASCADE)
    user = models.ForeignKey(User, on_delete=models.CASCADE, blank=True, null=True)

    def __str__(self):
        return "amount: " + str(self.amount) + " - ip : " + str(self.holding.name) + " - user: " + str(self.user.username)

class UserProfile(models.Model):
    user = models.OneToOneField(User, on_delete=models.CASCADE)
    ip = models.IntegerField(default=0)
    ingameName = models.CharField(max_length=50, default='NotSet')      
    userprofit = models.IntegerField(default=0)

    user_transactions = models.ForeignKey(transaction, on_delete=models.CASCADE, blank=True, null=True)

def …
Run Code Online (Sandbox Code Playgroud)

django

2
推荐指数
1
解决办法
4918
查看次数

管理面板,显示date_created和date_updated?

我尝试在上一篇文章中遵循以下答案: DateTimeField在管理系统中未显示

但是也许我太昏暗了,无法理解它。

没有显示created_at的字段。有人能指出我正确的方向吗?

模型

class holding_transaction(models.Model):
    holdingname = models.ForeignKey(holding, on_delete=models.CASCADE)
    created_at = models.DateTimeField(auto_now_add=True)
    updated_at = models.DateTimeField(auto_now=True)
Run Code Online (Sandbox Code Playgroud)

管理员

class holding_transactionAdmin(admin.ModelAdmin):

    readonly_fields = ('created_at', )

admin.site.register(holding_transaction, holding_transactionAdmin)   
Run Code Online (Sandbox Code Playgroud)

编辑:

django

2
推荐指数
1
解决办法
915
查看次数

重定向到另一个视图功能

当用户登录时,我想将他们简单地重定向到索引,而不是在URL中使用“ / login /”。

我有两个视图函数,一个用于登录和索引。

索引视图

def index(request):

    context = {

    }
    return render(request, 'index.html', context)
Run Code Online (Sandbox Code Playgroud)

登录视图

def login(request):

    username = request.POST.get('username', '')
    password = request.POST.get('password', '')

    user = auth.authenticate(username=username, password=password)

    if user is not None:
        auth.login(request, user)
    else:
        print('Wrong user') 

    return redirect('index') #<------ Something like that(?)
Run Code Online (Sandbox Code Playgroud)

网址格式

urlpatterns = [
            url(r'^$', views.index, name='index'),

            url(r'^login/$', views.login, name='login'),      
]
Run Code Online (Sandbox Code Playgroud)

控制台错误:

Correct user
Internal Server Error: /Crowd/login/
Traceback (most recent call last):
  File "C:\Anaconda3\Lib\site-packages\django\core\handlers\base.py", line 149, in get_response
    response = self.process_exception_by_middleware(e, request) …
Run Code Online (Sandbox Code Playgroud)

django

2
推荐指数
1
解决办法
2425
查看次数

Django,将字典发送到模板

是否可以将字典发送到模板.并使用django/python魔法在客户端工作?

视图功能

def index(request):

    context = {
               'users' : users,
               'investments' : { 'one' : 1, 'two' : 2 },
    }
    return render(request, 'index.html', context)
Run Code Online (Sandbox Code Playgroud)

和HTML

{% if investments %}
    <h1>{{ investments['one'] }}</h1> #<---- something like that.
{% endif %}
Run Code Online (Sandbox Code Playgroud)

python django

1
推荐指数
1
解决办法
2187
查看次数

注销时超出最大递归深度(请求)

我正在尝试在我的页面上创建注销功能。但是每次我点击指向注销 url 的链接时,都会遇到这个递归错误。

下面是代码,如果用户登录,则假设显示内容和注销功能。否则显示登录表单。

查看方法

def login(request):

   username = request.POST.get('username')
   password = request.POST.get('password')

   user = authenticate(username=username, password=password)

   context = {

   }

   if user is not None:
       print('Correct user'   
   else:
       print('Wrong user')

       return render(request, 'index.html', context)

def logout(request):
    print('logged out')
    logout(request)

    return redirect('index')
Run Code Online (Sandbox Code Playgroud)

网址

urlpatterns = [
            url(r'^$', views.index, name='index'),         

            url(r'^login/$', views.login, name='login'), 

            url(r'^logout/$', views.logout, name='logout'),
]
Run Code Online (Sandbox Code Playgroud)

索引.html

    {% if user %}
        <h3>Hello {{user.username}}</h3>
        <a href="{% url 'crowd:logout' %}">Logout</a>
    {% else %}
        <form action="{% url 'crowd:login' %}" method='post'>
        {% csrf_token %} …
Run Code Online (Sandbox Code Playgroud)

django

1
推荐指数
1
解决办法
2060
查看次数

AttributeError: 'Window' 对象没有属性 'q'

我正在尝试将一个简单的字符串附加到 and 对象中的列表中。但我猜 self 关键字会干扰 pyqt 窗口?

我该如何解决这个问题?

class Window(qt.QMainWindow):
    def __init__(self, parent=None):
        super(Window, self).__init__(parent)
        self.CreateWidgets()       
        self.q = Qfetch.DataFetch()

    def CreateWidgets(self):
        toPortfolio = "str"
        self.q.Portfolio.append(toPortfolio) #<---- This cause the error
Run Code Online (Sandbox Code Playgroud)

q班

class DataFetch():
    def __init__(self):
        self.Portfolio = []
Run Code Online (Sandbox Code Playgroud)

python pyqt

0
推荐指数
1
解决办法
1813
查看次数

从DataFrame中删除列的第一行N.

如果我有一个长度为3的DataFrame,有3列

a b c
1 2 3
4 5 6
7 8 9
Run Code Online (Sandbox Code Playgroud)

有没有一种聪明的方法b用NaN 替换前两行的色谱柱?

python numpy dataframe pandas

0
推荐指数
1
解决办法
97
查看次数

标签 统计

django ×5

python ×3

dataframe ×1

numpy ×1

pandas ×1

pyqt ×1