标签: django-models

如何在Django的ImageField路径中设置变量?

这是我的models.py:

class Group_Photo(models.Model):

    group_id = models.ForeignKey(Group)
    photo = models.ImageField(upload_to="static/image/group/" + group_id + "/")
Run Code Online (Sandbox Code Playgroud)

我想将图像上传到一个组的目录.例如,如果group_id = 3,

upload_to="static/image/group/3/"

我应该怎么做?

对不起,这是错误.

文件"/models.py",第161行,在Group_Photo中photo = models.ImageField(upload_to ="static/image/group /"+ group_id +"/")TypeError:无法隐式地将'ForeignKey'对象转换为str

python django django-models

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

如何在django中压缩被压缩的迁移?

例如,我有50个迁移,并且已将所有迁移压缩到0001_initial.py,然后又达到50个迁移。我如何压缩迁移?

django django-models

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

ImportError:没有名为rest_framework_nested的模块

我尝试运行服务器时遇到以下错误:

ImportError: no module named rest_framework_nested
Run Code Online (Sandbox Code Playgroud)

有人可以帮忙吗?

django django-models python-2.7

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

将表错误参数显示为reversed()必须是一个序列

我正在开发一个小应用程序,我可以在其中显示我的数据库中的所有表(sqlite3),并选择其中一个,可视化数据(我知道我可以使用管理员,但我需要在应用程序中这样做)

我的model.py中有不同的模型,比如myModel1,myModel2 ......

在我的views.py中

def myhomepage(request):
    tables_list = connection.introspection.table_names() 
    return render(request, 'myhomepage.html', { 'tables_list': tables_list})

 def detail_table(request, table):
    try:
        Table_to_View = ContentType.objects.get(app_label="myapp", model=table)
    except Table_to_View.DoesNotExist:
            raise Http404 ("La tabella non esiste")
    context = {'Table_to_View' : Table_to_View }
    return render(request, "detail_table.html", context )
Run Code Online (Sandbox Code Playgroud)

和模板myhomepage.html

{#something#}
<title>Lista delle tabelle</title>
<body>
{% if tables_list %}
<ul>
{%for t in tables_list %}
  <li> <a href="{% url 'detail_table' t %}"> {{table}}</a></li>
{% endfor %}
</ul>
{% endif %}
Run Code Online (Sandbox Code Playgroud)

这是urls.py

from django.conf.urls import url
from . …
Run Code Online (Sandbox Code Playgroud)

python django django-templates django-models django-views

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

创建django模型时出现语法错误

我试图创建一个django模型来获取新闻通讯的注册,同时在model.py文件中创建模型我得到以下错误

  from __future__ import unicode_literals

  from django.db import models



  def SignUp(models.Model):
       Email = models.EmailField(max_length=254, null = False , blank = False)
       Name  = CharField(max_length= 26, null = False , blank = False, default = 'datta')
       TmieStamp = DateTimeField(auto_now=False, auto_now_add=True)
       def __unicode(self)__:
           return self.Name
Run Code Online (Sandbox Code Playgroud)

错误:

Error:
       File "C:\Users\DattaVamshi\Desktop\env\src\newsletter\models.py", line 7
  def SignUp(models.Model):
                   ^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)

错误在这一行"def SignUp(models.Model):"

Pyhon 2.7,Django 1.9

django django-models python-2.7

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

Python:如何在我的Django模板中传递外键的值?

我创建了一个出价模型,以便第2类用户可以对第1类用户创建的某些"帖子"出价.为实现这一目标,我在"Bid"模型中为post field创建了一个外键.

实际上我想将出价与'post'模型中的自动生成'id'的特定帖子联系起来.所以我在我的模板中将get_absolute_url放在Post'id'旁边.我是django的新手,我不确定它是否适用于我想要的东西.

如何将出价与post_id关联到模板中的特定帖子,以便我可以获得各种类型2用户针对特定帖子的出价金额?我很乐意帮助我解决这个问题.

这是我的代码:

Models.py:

class Post(models.Model):

    post_id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
    user = models.ForeignKey(settings.AUTH_USER_MODEL, default=1)
    from1 = models.CharField(max_length=20)
    timestamp = models.DateTimeField(auto_now=False, auto_now_add=True)

    objects = PostManager()

    def __str__(self):
        return self.post_id

    def get_absolute_url(self):
        return reverse("posts:detail", kwargs={"id": self.post_id})

    class Meta:
        ordering = ["-timestamp", "-Time"]

class Bid(models.Model):

    bid_id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
    post = models.ForeignKey(Post, default=uuid.uuid4, related_name='bids' )
    user = models.OneToOneField(settings.AUTH_USER_MODEL, null=True, blank=True, unique=False)
    amount = models.IntegerField()

    def get_absolute_url(self):
        return reverse("accept_bid", kwargs={"bid_id": self.bid_id})

    def __unicode__(self):
        return self.amount

    def __str__(self):
        return self.amount
Run Code Online (Sandbox Code Playgroud)

forms.py: …

django foreign-keys django-models django-views

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

Python:NoReverseMatch错误:反向'详细',参数'(UUID)'和关键字参数'{}'找不到.尝试了1种模式:django中的['']

我创建了一个模型'Post',其中我使用UUID而不是Django内置的自动生成ID.在'Post'模型中,我定义了一个def get_absolute_url,以便我可以将它保存在我的模板中.当我试图获得交易页面时,它引发了一个错误:NoReverseMatch at/deal/Reverse为'detail'带参数'(UUID('086d177f-9071-4548-b5db-1d329078853e'),)'和关键字参数'{}' 未找到.尝试了1种模式:['deal /(?P\d +)/ $'].我很感激帮助我解决这个问题.

这是我的代码:

Models.py:

class Post(models.Model):
    post_id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
    user = models.ForeignKey(settings.AUTH_USER_MODEL, default=1)
    from1 = models.CharField(max_length=20)

    def __str__(self):
        return self.post_id

    def get_absolute_url(self):
        return reverse("detail", args=(self.post_id))
Run Code Online (Sandbox Code Playgroud)

urls.py:

url(r'^deal/$', views.deal, name='deal'),
url(r'^deal/(?P<post_id>\d+)/$', views.post_detail, name='detail'),
Run Code Online (Sandbox Code Playgroud)

Views.py:

def deal(request):
    queryset_list = Post.objects.active() #.order_by("-timestamp")
    if request.user.is_staff or request.user.is_superuser:
        queryset_list = Post.objects.all()
    context = {
        "object_list": queryset_list, 
        "post_id": "List",
    }
    return render(request, 'before_login/deal.html', context)

def post_detail(request, post_id=None):  
    instance = get_object_or_404(Post, post_id=post_id)
    if instance.date > timezone.now().date():
        if not request.user.is_staff or …
Run Code Online (Sandbox Code Playgroud)

django django-models django-urls django-views

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

如何返回所有记录但排除最后一项

我有过滤问题django-models.

我想返回特定的所有记录,animal但根据最新created_at值排除最后一项,并按降序排序.

我有这个模型.

class Heat(models.Model):

    # Fields
    performer = models.CharField(max_length=25)
    is_bred = models.BooleanField(default=False)
    note = models.TextField(max_length=250, blank=True, null=True)
    result = models.BooleanField(default=False)

    # Relationship Fields
    animal = models.ForeignKey(Animal, related_name='heats', on_delete=models.CASCADE)

    created_at = models.DateTimeField(auto_now_add=True, editable=False)
    last_updated = models.DateTimeField(auto_now=True, editable=False)
Run Code Online (Sandbox Code Playgroud)

我能够通过这个原始的sql脚本实现所需的结果.但我想要一个django方法.

SELECT 
    *
FROM
    heat
WHERE
    heat.created_at != (SELECT MAX((heat.created_at)) FROM heat)
        AND heat.animal_id = '2' ORDER BY heat.created_at DESC;
Run Code Online (Sandbox Code Playgroud)

请帮忙.

django django-models

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

NameError - 未定义全局名称

我试图从html表单中读取一些数据并将其插入数据库.这样做我坚持这个错误"/ nameEmployee /的NameError:全局名称'get_post_param'未定义"; 我会在这里粘贴我的代码.有人可以帮我解决这个问题.
VIEWS.PY

def createEmployee(request):
    if request.method == "POST":
        userName = get_post_param(request,"userName")
        designation = get_post_param(request,"designation")
        employeeID = get_post_param(request,"employeeID")
        contactNumber = get_post_param(request,"contactNumber")
        project = get_post_param(request,"project")
        dateOfJoin = get_post_param(request,"dateOfJoin")
        EmployeeDetails(userName=userName,designation=designation,employeeID=employeeID,contactNumber=contactNumber,project=project,dateOfJoin=dateOfJoin).save()
        return render_to_response('createEmployee.html')
    else:
        return render_to_response('createEmployee.html')
Run Code Online (Sandbox Code Playgroud)

TEMPLATE.PY

<form action="http://127.0.0.1:8000/createEmployee/" method="POST"> 
Name: <input type="text" name="userName" /><br />
Designation: <input type="text" name="designation" /><br>
EmployeeID: <input type="text" name="employeeID" /><br>
Contact Number: <input type="text" name="contactNumber" /><br>
Project: <input type="text" name="project" /><br>
Date Of Join: <input type="text" name="dateOfJoin" /><br>
<input type="submit" value="Submit" /><br />
</form>
Run Code Online (Sandbox Code Playgroud)

python django django-templates django-models django-views

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

以下代码中的错误是什么?

这是我的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)

python django django-models django-admin

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