小编brs*_*gic的帖子

Django FileField默认文件

我有一个模型,其中包含FileField如下

class Employer(models.Model):
        logo = models.FileField(storage=FileSystemStorage(location=settings.MEDIA_ROOT), upload_to='logos')
Run Code Online (Sandbox Code Playgroud)

问题是如何在此文件字段中添加"{{MEDIA_ROOT}}/logos/anonymous.jpg"等默认文件?

django django-models default-value filefield

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

Django管理员在模型保存期间返回自定义错误消息

我想在save_modelDjango管理页面的功能中返回一些自定义错误消息 .

class EmployerAdmin(admin.ModelAdmin):
  exclude = ('update_user','updatedate','activatedate','activate_user')

  def save_model(self, request, obj, form, change):
    if obj.department != None and obj.isDepartmentSuggested:
        obj.isDepartmentSuggested =False
    else:
       return "You don't set a valid department. Do you want to continue ?"

    obj.update_user = request.user
    obj.updatedate = datetime.datetime.now()
    obj.save()
Run Code Online (Sandbox Code Playgroud)

当然,Else部分不正确,但我想说明我想要的东西.

我很高兴为我建议一种方法或文件.谢谢

django admin django-admin

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

Django Rest查询集按url参数过滤

我需要根据url参数过滤ListAPIView中的查询集.基本上,应用程序会通过调用API来列出事件的所有与会者(用户)/events/:id/attendees/

您可以在下面找到序列化器,模型,网址和视图.我也想知道在Django REST中进行这种端点实现的任何其他实践

**serializers.py**
class AttendeeSerializer(serializers.ModelSerializer):
    user = UserSerializer()

    class Meta:
        model = Attendee
        fields = ('user', 'status')


**views.py**
class EventAttendeeList(generics.ListAPIView):
    queryset = Attendee.objects.all()
    serializer_class = AttendeeSerializer
    #permission_classes = (permissions.IsAuthenticatedOrReadOnly,)

    def get_queryset(self):
        # It should filter attendees by event_id posted in URL
        return Attendee.objects.all()

**urls.py**

url(r'^events/(?P<pk>[0-9]+)/attendees/$', views.EventAttendeeList.as_view()),


**models.py**
class Event(models.Model):
    name = models.CharField(max_length=500, blank=True)
    attendees = models.ManyToManyField(settings.AUTH_USER_MODEL, through='Attendee', related_name='attendees_event')


class Attendee(models.Model):
    event = models.ForeignKey(Event, related_name="a_event")
    user = models.ForeignKey(settings.AUTH_USER_MODEL, related_name="a_user")
    requested_on = models.DateTimeField(default=timezone.now)
Run Code Online (Sandbox Code Playgroud)

django django-rest-framework

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

Django admin list_display属性用法

我在下面有模型及其管理代码.问题是如何tag在其list_display财产中展示一本书的前三 部分?我可以在书籍编辑时显示标签,但我想在管理面板中列出该书时使用3个标签.

models.py

class Book(models.Model):
    name = models.CharField(max_length=1000)

    def __unicode__(self):
        return self.name

class BookTag(models.Model):
    name = models.CharField(max_length=1000)
    book = models.ForeignKey(Book,null=False,blank=False)    
    def __unicode__(self):
        return self.name
Run Code Online (Sandbox Code Playgroud)

admin.py

class BookTagInline(admin.TabularInline):
    model = JobTitleTag

class BookAdmin(admin.ModelAdmin):
    list_display = ('name')
    inlines = [ BookTagInline, ]

admin.site.register(Book,BookAdmin)
Run Code Online (Sandbox Code Playgroud)

你能给我任何建议吗?谢谢

python django django-admin

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

模板标签中翻译的枚举字段

我试着在模板中显示一个枚举的名称.要清楚,我有类似的课程 model.py

class EmployerWorkerNumberRange():
R_0 = 0
R_1_5 = 1
R_6_15 = 2
UNKNOWN = 3

EMPLOYER_WORKER_NUMBER_RANGE =(
    (R_0,_("wnr_0")),
    (R_1_5 ,_("wnr_1_5")),
    (R_6_15,_("wnr_6_15")),
    (UNKNOWN,_("UnknownWorkerNumberRange")),
)
Run Code Online (Sandbox Code Playgroud)

当我在形式上使用它时

wnr = forms.ChoiceField(label=_("emp_full_reg_wnr"), required=True, choices=EmployerWorkerNumberRange.EMPLOYER_WORKER_NUMBER_RANGE)

它工作得很好.(用翻译的值填充下拉列表,当我得到所选项目时,它只会转换为id)

我的问题是如何通过给出它的id来在我的模板中显示任何翻译的值.例如,我想使用它EmployerWorkerNumberRange.EMPLOYER_WORKER_NUMBER_RANGE[0]

你能建议我吗?

谢谢

django enums django-templates templatetags

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

自定义radioselect默认渲染器

我有以下形式的radioselect选项:

jobStatus = forms.ChoiceField( widget=forms.RadioSelect())
Run Code Online (Sandbox Code Playgroud)

但是,它会在<ul> <li> .. </li></ul>标签中呈现单选按钮.

你能建议我用任何方式渲染唯一的无线电按钮输入吗?

谢谢

django default itemrenderer

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

django显示文本字段

textfield在Django中有一个带有s 的表单,用户逐行输入文本.当我查看管理员方面的条目时,我看到了用户如何编写它,但当我在我的网站上显示它时,在Django模板中,它只是加入句子而我无法再逐行显示文本.

为了说明,用户输入文本为

-bla

-bla1

-bla2

但是,它在我的页面中看起来像

-bla1-bla2-bla3

这是我在模板中的代码:

<div>
   <p>
      {{ rev.myTextField }}
   </p>
</div>
Run Code Online (Sandbox Code Playgroud)

django django-templates django-models django-forms

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

sudo python运行旧的python版本

我已经在CentOS 6上安装了python 2.7.3和这些说明

http://villaroad.com/2010/10/rolling-python-2-6-2-on-centos-5-3/

我为root和myuser的bash_profile添加了别名,用于新的python.现在,当我将python写入shell时,它会正确地从两个用户运行python2.7.3.

但是,如果我写sudo python它仍然运行旧版本python2.6.6

可能是什么问题呢?

python sudo centos centos6

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

如何指定setprecision舍入

当流到std输出时,我可以指定setprecision来舍入double值吗?

ofile << std::setprecision(12) << total_run_time/TIME << "\n";
Run Code Online (Sandbox Code Playgroud)

输出: 0.756247615801

ofile << std::setprecision(6)<< total_run_time/TIME << "\n";
Run Code Online (Sandbox Code Playgroud)

输出: 0.756248

但我需要输出为 0.756247

谢谢

c++ floating-point

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

在redis中存储和获取django模型对象

我设置了 Django & Redis 项目并尝试在 Redis 中存储 Django 模型对象。如果我django.core.cache如下使用,card2 被正确设置为 django 对象。但是,如果我使用 django_redis 提供的原始 redis 连接,它会获取 django 模型对象的字符串表示。

我将两个键设置如下。如何使用原始 redis 连接来获取卡对象本身而不是其字符串 repr?我需要它,因为我想使用mgetzrange比如 redis.py 的方法。

from django.core.cache import cache
from django_redis import get_redis_connection

con = get_redis_connection("default")
card = Card.objects.all()[0]

key = "card_" + str(card.id)

con.delete(key)
cache.delete(key)

con.set(key, card)
cache.set(key, card)

card1 = con.get(key)
card2 = cache.get(key)
Run Code Online (Sandbox Code Playgroud)

python django redis

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