我有一个模型,其中包含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"等默认文件?
我想在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部分不正确,但我想说明我想要的东西.
我很高兴为我建议一种方法或文件.谢谢
我需要根据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) 我在下面有模型及其管理代码.问题是如何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)
你能给我任何建议吗?谢谢
我试着在模板中显示一个枚举的名称.要清楚,我有类似的课程 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]
你能建议我吗?
谢谢
我有以下形式的radioselect选项:
jobStatus = forms.ChoiceField( widget=forms.RadioSelect())
Run Code Online (Sandbox Code Playgroud)
但是,它会在<ul> <li> .. </li></ul>标签中呈现单选按钮.
你能建议我用任何方式渲染唯一的无线电按钮输入吗?
谢谢
我textfield在Django中有一个带有s 的表单,用户逐行输入文本.当我查看管理员方面的条目时,我看到了用户如何编写它,但当我在我的网站上显示它时,在Django模板中,它只是加入句子而我无法再逐行显示文本.
为了说明,用户输入文本为
-bla
-bla1
-bla2
但是,它在我的页面中看起来像
-bla1-bla2-bla3
这是我在模板中的代码:
<div>
<p>
{{ rev.myTextField }}
</p>
</div>
Run Code Online (Sandbox Code Playgroud) 我已经在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
可能是什么问题呢?
当流到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
谢谢
我设置了 Django & Redis 项目并尝试在 Redis 中存储 Django 模型对象。如果我django.core.cache如下使用,card2 被正确设置为 django 对象。但是,如果我使用 django_redis 提供的原始 redis 连接,它会获取 django 模型对象的字符串表示。
我将两个键设置如下。如何使用原始 redis 连接来获取卡对象本身而不是其字符串 repr?我需要它,因为我想使用mget,zrange比如 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) django ×8
python ×3
django-admin ×2
admin ×1
c++ ×1
centos ×1
centos6 ×1
default ×1
django-forms ×1
enums ×1
filefield ×1
itemrenderer ×1
redis ×1
sudo ×1
templatetags ×1