Django作为S3代理
我使用自定义字段"下载文件"扩展了一个模型,该字段是我django项目中URL的链接,例如: http://www.myproject.com/downloads/1 那里,我想提供存储在S3桶中的文件.存储桶中的文件不可读取,用户可能无法直接访问它.现在我想 避免将文件加载到服务器内存中(这些是多GB文件) 避免在服务器上有临时文件 理想的解决方案是让django充当直接将S3锁定的代理作用.我使用boto,但没有发现流式传输块的可能性. 有什么想法吗? 谢谢. 解决方案 而不是代理,为什么不简单地重定向? 在www.myproject.com/downloads/1上使用django视图将HTTP重定向到S3存储URL - 可以生成时间限制的身份验证的URL,例如.请参阅此处/Dev/shareobjectPresignedurl.html 然后客户直接从S3下载文件,但是内容仍然安全,并且必须通过您的Django应用程序访问 访问
0 2024-04-03
编程技术问答社区
Django: 管理员:改变管理员中字段的小工具
我有一个像这样布尔值的模型: class TagCat(models.Model): by_admin = models.BooleanField(default=True) 这在管理员中以复选框的形式出现. 我如何将其用作管理中的单选按钮? 另外,如何在管理员中始终具有一定的选择值? 另外,当非Admin用户添加TagCat时,我希望默认值相反.这个领域应隐藏在他身上. 有人可以告诉我如何做吗? Django文档似乎没有详细信息. 解决方案 更新1:使我完成1的代码)(不要忘记模型中的布尔菲尔德的tot选项) ) from main.models import TagCat from django.contrib import admin from django import forms class MyTagCatAdminForm(forms.ModelForm): class Meta: model =
0 2024-04-01
编程技术问答社区
django-用基本认证保护一些网页路径
我是Django的新手,只是尝试一些简单的实验来弄湿我的脚.我正在运行Django 1.0,Apache2 Prefork和MOD_WSGI. 我正在尝试建立一个使用以下URL结构的网站 / /members /admin 根部基本上是一个公共区域. 应使用基本认证(可能由Apache验证)保护成员路径 管理路径应使用内置的Django身份验证进行保护. 按照文档中的示例,我基本上可以通过基本身份验证保护整个网站,但这不是我想要的. 除了虚拟主机配置: WSGIScriptAlias / /django/rc/apache/django.wsgi AuthType Basic AuthName "Authentication Required" AuthUserFile "/django/_HTPASSWD/.htpasswd" Require valid-user # Order allow,
0 2024-03-29
编程技术问答社区
如何使用 django 管理面板在特定地址上传文件?
我正在开发具有图像上传功能的Django管理面板,图像上传成功工作,但是我无法访问浏览器中输入URL的图像. 当我想尝试访问这样的图片时: http://127.0.0.1:8000/media/485508.jpg 我得到此错误: Page not found (404) Request Method: GET Request URL: http://127.0.0.1:8000/media/485508.jpg 这是我的代码: models.py: picurl = models.ImageField() settings.py: STATIC_URL = '/static/' MEDIA_ROOT = os.path.join(BASE_DIR, 'media') MEDIA_URL = 'http://127.0.0.1:8000/media/' if not os.path.exists(MEDIA_ROOT):
0 2024-03-26
编程技术问答社区
django autoupdate user; save()得到一个意外的关键字参数'force_insert'。
我正在尝试为使用 admin.py from myapp.myproj.models import Activity from django.contrib import admin class ActivityAdmin(admin.ModelAdmin): exclude = ('cruser',) list_display = ('activity_nm', 'activity_desc', 'startdt', 'enddt','upddt','crdt') def save_model(self, request, obj, form, change): if not change: obj.cruser = request.user obj.save() admin.site.register(Activity, ActivityAdmin) "给出了save_model方法的http
0 2024-03-21
编程技术问答社区
在django管理员变更列表中的ManyToManyField小部件?
在django管理员的更改列表中,我想使用list_edistion显示django-autocomplete窗口小部件. 我在这里找到了类似的东西: List_edistable and Widgets 通常在list_display中包含一个Manytomanyfield,这会引起不正确配置的异常,例如: ""'bookadmin.list_display [2]','作者'是一个不支持的tomanyfield." i(也许是不明智的)从cont/admin/validate.py中删除了3行以绕过例外. :) 我现在已经吐出以下内容,哪个接近(?),但没有雪茄. 关于如何进行的任何想法?有更好的方法吗? 这是我目前拥有的:(作者autocomplete在常规管理表单中正常工作) class AuthorAutocomplete(AutocompleteSettings): search_fields = ('first_nam
2 2024-03-20
编程技术问答社区
Django管理:将外键的选择框改为搜索自动完成,像搜索对象一样
Django Admin面板在模型的对象列表上具有search_fields的搜索自动完成,但是现在我有3000个用户. selectbox可以手动添加用户;我需要像搜索场所相同的行为来选择用户foreinkey User. 如何在管理面板内部编辑的表单上包含Django搜索功能? from myapp.models import Red from django.contrib.auth.models import User class Red(models.Model): customer = models.ForeignKey(User, verbose_name="Cliente") pub_date = models.DateTimeField(default=datetime.now, blank=True) 解决方案 由于Django 2.0,您可以使用 autocomplete_fields 生成外键的自动完成字段. class
6 2024-03-20
编程技术问答社区
在django管理中替代用户选择界面以减少大型网站的页面大小?
我有一个基于Django的网站,大约有300,000个用户对象.具有外国钥匙字段的对象的管理页面为用户使用 非常长时间的加载时间为最终的形式的大小约为6MB.当然,由此产生的下拉列表也不是特别有用. 是否有用于处理此案的现成的替代品?我一直在谷歌搜索片段或博客条目,但还没有找到任何东西.我想拥有一个较小的下载尺寸和一个更可用的接口. 解决方案 ModelAdmin类提供 class ArticleAdmin(admin.ModelAdmin): raw_id_fields = ("user",)
0 2024-03-20
编程技术问答社区
Django管理。将相关字段的选择框改为自动完成
我们有一些将用户作为外键的模型.但是,由于我们系统中约有25000个用户,找到我们需要的用户有些艰巨. 有一个解决方案比选择框更好吗?也许是自动完成的,因此我们可以开始键入用户名/地址?还是只是一个搜索框?切换这些对象的相关用户时,使用25000个未分类的用户越来越难. 即使只是设置它以按用户名对用户进行排序也将有所帮助. 解决方案 我有一个问题,我的结论是使用自动完成字段.在大多数情况下,它效果很好.唯一的问题是,当您有很多条目大多相同时.例如,在您的情况下,如果您键入 robert 以获取名称,并且列表中有几百 robert 条目... 更新 As mentions in shuckc's answer, Django 2.0+ admin as now 内置. 用于较老的django或在管理员之外使用(旧答案) 有许多应用程序将自动完成添加到Django管理员: django-autocomplete-light django-e
0 2024-03-20
编程技术问答社区
Django管理员基于组的is_staff
是否可以通过选择一个组来选择IS_STAFF?假设有两个组:用户,管理员 当新用户在用户组中时,他不是员工,但是如果他在管理员组中,则是员工. 解决方案 我通过扩展UserAdmin类和GET_FORM函数来使其正常工作,我在Mascot6699的答案中放置了此功能: if obj.groups.filter(name="Administrator").exists(): obj.is_staff = True else: obj.is_staff = False 因此,每当我将用户(带有管理员菜单)放在管理员组中时,它将检查IS_STAFF选项,否则请取消选中. 其他解决方案 有一种简单的方法可以在用户模型中定义以下内容 @property def is_staff(self): if self.is_staff == True or self.groups.filter(name="staff").exists() 因
2 2024-03-20
编程技术问答社区
隐藏Django管理中的授权部分
在Django管理员中,有什么方法可以隐藏" auth"部分?假设这是没有应用程序的Django和Barrebones Project的干净安装,只有管理员 解决方案 您可以使用admin.site.unregister from django.contrib.auth.models import User from django.contrib.sites.models import Site from django.contrib.auth.models import Group admin.site.unregister(User) admin.site.unregister(Group) admin.site.unregister(Site)
0 2024-03-19
编程技术问答社区
django上的管理页面被破坏
我已经设置了一个带有管理页面的Django项目.它在开发的头几周内很好地工作,一段时间没有使用管理页面,当我回到它时,管理页面被打破了.不管我做什么,它都不允许我登录. 输入用户名和PW后,管理页面总是说: 请输入正确的用户名和密码.请注意,这两个字段均对病例敏感. 我已经检查了DB:超级用户存在并且具有iS_Active,is_superuser,并且iS_Staff en true.我已经使用壳来确保密码正确.我已经多次冲洗,删除并重新创建了数据库,以确保没有任何错误.我还对中间件,URL,intasted_apps等进行了仔细研究,以确保它们都正确设置. 据我所知,管理页面正常工作,除了他们永远不会让任何人登录. 有什么想法在这里发生了什么,或其他试图调试的方法?我真的对这个错误感到困惑. ps:如果重要的话,我正在使用南方迁移,django-social-auth用于fb登录和local_settings.py生产和开发(我已经检查了它们 -
0 2024-03-19
编程技术问答社区
如何重置Django管理员密码?
我正在使用django(1.3版),并且忘记了管理用户名和密码.如何重置两个? 是否可以使普通用户进入管理员,然后删除管理员状态? 解决方案 python manage.py changepassword 在 其他解决方案 python manage.py createsuperuser将创建另一个超级用户,您将能够登录管理并记住用户名. 是的,为什么不. 赋予普通用户特权,用python manage.py shell打开外壳,然后尝试: from django.contrib.auth.models import User user = User.objects.get(username='normaluser') user.is_superuser = True user.save() 其他解决方案 您可以尝试使用控制台: python manage.py shell 然后在shell中使用以下脚本
0 2024-03-19
编程技术问答社区
django-admin自定义命令中的两个参数
我有一个工作 django-admin自定义命令,我用来用新信息填充数据库.再次,一切都起作用. 但是,我现在已经更改了模型和功能,以接受两个参数作为元组 - 名字和姓氏,而不仅仅是"名称". 下面的先前代码 - 工作.使用" manage.py xyz name1 name2 name3 ...等"运行(不同的args之间的空间) from django.core.management.base import BaseCommand, CommandError from detail.models import ABC from detail.parser import DEF class Command(BaseCommand): args = '' help = 'Populates the ABC class database' def handle(self, *args, **options):
4 2024-03-03
编程技术问答社区
在Django管理中保存含有非ASCII字符的ImageField时出现UnicodeEncodeError
我尝试将图像文件上传到django admin inlines中,并在尝试使用包含非ASCII字符的文件名上传文件时获得UnicenCodeError: File "/usr/local/lib/python2.6/site-packages/django/db/models/fields/files.py", line 92, in save self.name = self.storage.save(name, content) File "/usr/local/lib/python2.6/site-packages/django/core/files/storage.py", line 47, in save name = self.get_available_name(name) File "/usr/local/lib/python2.6/site-packages/django/core/files/storage.py", line 73, in
2 2024-02-27
编程技术问答社区
在Apache上部署Django?
我使用Django 1.8创建项目.现在,我想将其部署到服务器.当我在Ubuntu中运行此命令时,每件事都可以找到. python manage.py runserver 接下来,我在apache中创建vertuelhost和enbal key.com网站. VertualHost文件代码. (key.com.conf) ServerAdmin admin@key.com ServerName key.com ServerAlias www.key.com WSGIScriptAlias / /home/umayanga/Desktop/view_site/serialKey_gen_site/mysite/wsgi.py Opt
2 2024-02-27
编程技术问答社区
在Apache上部署Django?
我使用Django 1.8创建项目.现在,我想将其部署到服务器.当我在Ubuntu中运行此命令时,每件事都可以找到. python manage.py runserver 接下来,我在apache中创建vertuelhost和enbal key.com网站. VertualHost文件代码. (key.com.conf) ServerAdmin admin@key.com ServerName key.com ServerAlias www.key.com WSGIScriptAlias / /home/umayanga/Desktop/view_site/serialKey_gen_site/mysite/wsgi.py Opt
6 2024-02-27
编程技术问答社区
在提供Django静态文件时,Apache 403
我浏览了很多相关的帖子,但似乎没有任何帮助. 相关信息: django版本-1.4 Apache版本-2.2 Python版本-2.7 OS -Xubuntu 12.04 db -mysql 我正在尝试让Apache同时服务Django应用程序和静态文件.该问题在管理站点中显而易见,该网站未能显示任何CSS样式或图像.我的管理网站目前看起来像: (好吧,我本来会包含一个图像,但是堆栈溢出并没有让我.足以说它看起来像是在此主题上发布的其他所有人的管理页面,请参见 应用程序诸如我的登录页面和某些动态内容的应用程序可以正常工作,但是当我尝试提供静态内容时,我会遇到403错误.此外,当我尝试通过查看管理页面的渲染html并单击 的样式表的链接时,尝试手动导航到样式表. http://localhost/static/admin/css/base.css 我遇到了403错误.我可以在终端中导航,然后更改文件夹的权限,以便Apache的ww
2 2024-02-27
编程技术问答社区
Django和S3 Bucket aws管理静态文件
我有一个Django项目,我想配置S3存储桶以存储静态文件. 创建后,网站加载,但没有从存储桶中检索文件,因此即使在屏幕截图中,也没有CSS的CSS: 这是用于存储桶配置的设置: STATIC_URL = '/static/' MEDIA_URL = '/images/' STATICFILES_DIRS = [ os.path.join(BASE_DIR, 'static') ] MEDIA_ROOT = os.path.join(BASE_DIR, 'static/images') AWS_ACCESS_KEY_ID = '************' AWS_SECRET_ACCESS_KEY = '********************' AWS_STORAGE_BUCKET_NAME = 'BUCKET_NAME' AWS_S3_FILE_OVERWRITE = False AWS_DEFAULT_ACL = None DEFAULT_FILE
0 2024-01-26
编程技术问答社区
Django作为S3代理
我使用自定义字段"下载文件"扩展了一个模型,该字段是我django项目中URL的链接,例如: http://www.myproject.com/downloads/1 那里,我想提供存储在S3桶中的文件.存储桶中的文件不可读取,用户可能无法直接访问它.现在我想 避免将文件加载到服务器内存中(这些是多GB文件) 避免在服务器上有临时文件 理想的解决方案是让django充当直接将S3锁定的代理作用.我使用boto,但没有发现流式传输块的可能性. 有什么想法吗? 谢谢. 解决方案 而不是代理,为什么不简单地重定向? 在www.myproject.com/downloads/1上使用django视图将HTTP重定向到S3存储URL - 可以生成时间限制的身份验证的URL,例如.请参阅此处/Dev/shareobjectPresignedurl.html 然后客户直接从S3下载文件,但是内容仍然安全,并且必须通过您的Django应用程序访问 访问
6 2024-01-25
编程技术问答社区