假设我们在django中有一个模型定义如下:
class Literal:
name = models.CharField(...)
...
Run Code Online (Sandbox Code Playgroud)
名称字段不是唯一的,因此可以具有重复值.我需要完成以下任务:从模型中选择至少具有该name字段的重复值的所有行.
我知道如何使用纯SQL(可能不是最佳解决方案):
select * from literal where name IN (
select name from literal group by name having count((name)) > 1
);
Run Code Online (Sandbox Code Playgroud)
那么,是否可以使用django ORM选择它?或更好的SQL解决方案?
嗨假设我有一个像这样的简单模型类:
class TestModel(models.Model):
testkey = models.ForeignKey(TestModel2)
...
Run Code Online (Sandbox Code Playgroud)
当我创建一个TestModel对象时,我必须传递一个TestModel2对象的实例来创建它:
testkey =TestModel2.objects.get(id=...)
TestModel.objects.create(testkey=testkey)
Run Code Online (Sandbox Code Playgroud)
这导致我想要对数据库进行2次查询,并且我有一个创建对象所需的外键ID列表.
是否可以在不初始检索外键对象的情况下使用外键创建对象?
我有一个名称列表,我想匹配不区分大小写,有没有办法在不使用下面的循环的情况下执行此操作?
a = ['name1', 'name2', 'name3']
result = any([Name.objects.filter(name__iexact=name) for name in a])
Run Code Online (Sandbox Code Playgroud) 我正在尝试在模型中创建一个字段,该字段应该为注册用户存储图像.此图像应重命名并存储在单独的用户目录中media/users/10/photo.jpeg.
我搜索了很多,但仍然无法找到如何干净,正确地做到这一点.在我看来,许多网站需要相同的功能,这应该在django文档中,但事实并非如此.
我在我的模型中使用了django的ContentType外键,我正在使用它来进行单元测试.
因此,我必须在我的fixture中硬编码content_type_id,但django有时会将其初始化为不同的值,因此我的测试失败了.
那么有没有办法安全地预测模型的content_type_id或任何其他适当的方式来处理这种情况?
我试图弄清楚scikit-learn包中的哪种决策树方法更适合我执行分类任务的需要.
但是,我发现有两种决策树模型可用:
任何人都可以指出使用这些模型的优点和缺点吗?
我有一个带有外键的模型,如下所示:
class Concept(models.Model):
name = models.CharField(max_length=200)
category = models.ForeignKey('self')
Run Code Online (Sandbox Code Playgroud)
但我不知道如何选择所有具有非零子值的概念。这可以通过 django QuerySet API 实现吗?或者我必须编写自定义 SQL?
我的活动中有一个RecyclerView,并附加了LinearSnapHelper:
TimePickerAdapter timePickerAdapter = new TimePickerAdapter(hours);
recyclerView = (RecyclerView) root.findViewById(R.id.recycler_view);
final SnapHelper snapHelper = new LinearSnapHelper();
snapHelper.attachToRecyclerView(recyclerView);
Run Code Online (Sandbox Code Playgroud)
问题是,当我最初要滚动到特定项目时,不会触发捕捉帮助器来附加该项目(请参见图片):
recyclerView.getLayoutManager().scrollToPosition(timePickerAdapter.getCurrentPosition());
Run Code Online (Sandbox Code Playgroud)
当我用手滚动时,它开始按预期工作。有什么解决办法吗?
在我的 Django 应用程序中,我Guest有为所有未注册用户创建的用户帐户(他们都有 email='guest@mysite.com')。同时我创建了一些与Guest账户相关的演示对象。这些对象与注册用户的对象位于同一个表中(具有相同的模型)。而且我有更多这些对象的一种类型(模型),例如:
class Object1(models.Model):
user = ForeignKey(...)
...
class Object2(models.Model):
user = ForeignKey(...)
...
Run Code Online (Sandbox Code Playgroud)
我想要实现的是在django admin 中查看与访客帐户相关的所有对象时过滤掉它们。
现在我子类化django.contrib.admin.views.main.ChangeList并覆盖get_query_set方法来执行所需的排除,并get_changelist在运行时重新定义django 的 ModelAdmin 类的方法:
class FilteredChangeList(ChangeList):
def get_query_set(self):
qs = super(FilteredChangeList, self).get_query_set()
if is_related_to(self.model, Profile):
qs = qs.exclude(user__email='guest@mysite.com')
return qs
def my_getchangelist(self, request, **kwargs):
return FilteredChangeList
ModelAdmin.get_changelist = my_getchangelist
Run Code Online (Sandbox Code Playgroud)
我认为在运行时重新定义 django 的方法是一种不好的做法,那么是否有针对该问题的正确解决方案?
如果这个问题出现在某个地方我很抱歉,但我找不到任何东西.
所以,问题很简单:这些是模仿行为的任何django原生形式request.POST.getlist('something')吗?
在我的UI中,用户创建了一个他想要保存的对象列表,这些对象表示为具有相同名称的隐藏输入列表:
<input type="hidden" name="cc" value="1045">
<input type="hidden" name="cc" value="1055">
<input type="hidden" name="cc" value="1046">
Run Code Online (Sandbox Code Playgroud)
request.POST.getlist 完全符合我的需要,但我不想直接处理请求,我想通过表单来做.
django ×8
android ×1
django-admin ×1
django-forms ×1
django-orm ×1
python ×1
scikit-learn ×1
sql ×1