问题标签 [dbix-class]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
perl - 为什么我从 DBIx::Class::InflateColumn::DateTime 对象的 sprintf 中使用未初始化的值?
自从我升级我的 DBIx::Class 以来,这似乎已经开始了,我无法弄清楚我做错了什么。
我在结果文件中的列定义是,
休息后再次做事的麻烦是为了防止 Schema::Loader 在我修改它生成的代码时遇到问题。
我需要做些什么来防止有关未初始化值的警告?这是使用 DBIx::Class 的 0.08124 版本(虽然我认为之前的版本也发生过这种情况,但当时我没有调查这个问题)。
perl - DBIx::Class::ResultSet 问题
我有以下代码:
但是当我尝试以这种方式使用它时:
我总是得到零结果,谁能告诉我做错了什么?
谢谢!
perl - 将列动态添加到 DBIx::Class ResultSet
我有一个DBIx::Class
代表 eBay 拍卖的对象。基础表有一个描述列,其中包含大量数据。描述列几乎从未使用过,因此它不包含在该DBIx::Class
表的列列表中。这样,大多数查询都不会获取拍卖描述数据。
但是,我确实有一个脚本需要这个专栏。在这种情况下,我想像访问任何其他列一样访问描述列的内容:
如何在不强制所有其他查询获取描述列的情况下完成此操作?
perl - Catalyst 中 DBIx::Class::Schema 模型上的 Moose 方法修饰符
对于任何给定的结果类 MySchema::Result::Foo(由使用 Moose/MooseX::nonmoose 的默认模式加载器生成的语法构建)
如果我添加一个 BUILDARGS 方法包装器来清理一行的构造函数数据,如下所示:
它在直接使用模式时有效。例如,以下内容按预期工作:使用 real_column=>'value' 创建新行对象,并在调用 ->new 之前删除 not_a_real_column
但是,当通过 Catalyst::Model::DBIC::Schema 使用相同的模式时,顺序是不同的。尝试创建新的 Foo 行对象时以下失败,因为 not_a_real_column 无效。换句话说, new 的参数在调用 ->new 之前不会通过 BUILDARGS 运行。
有趣的是,如果我环绕 'new' => sub{} 而不是 'BUILDARGS' => sub{} 两种情况下的行为是相同的,并且工作正常,但据我了解 Moose 教条状态永远不会混淆新的。
任何人都愿意帮助我理解为什么会这样,或者是否有更好的方法?
sql - 如何使用 DBIx::Class 在 GROUP 之前排序
我有一个简单的临时表,如下所示:
我正在使用 DBIx::Class。我的“项目”结果定义为:
这意味着我可以做到:
这很好。然后,我可以这样做:
得到这样的结果集:
我的问题:如何获得 Fred 和 Jack 的单人最新批准状态集?也就是说,我想得到这个结果集:
我试过这样的事情:
但是“ORDER BY”是在“GROUP BY”之后执行的,所以我得到了这样的东西:
帮助?
perl - 从模板工具包中的结果集中访问额外的选定列
模板内部(test.tt):
我不知道如何访问传递给模板的结果集中的额外选定项目。
database - 使用 DBIx::Class 在 SQLite 数据库上创建索引
我开始认为我的 DBIx::Class 表需要索引——我对多个连接有一些昂贵的查询,我想看看是否可以对它们进行一些优化。有没有办法在 DBIx::Class 中的表上创建和维护索引?
sql - 调用 SQL::Translator::Table 的 add_index 函数时如何指定索引值顺序?
我正在使用 DBIx::Class 创建表及其索引,因此调用SQL::Translator::Table add_index()但我希望能够在某些列上指定值顺序,如下所示:
是否可以向 add_table() 提供“ASC”和“DESC”修饰符?
如果没有,我怀疑这个 SQL 效率低下:
在这种情况下,有什么建议的解决方法来减少数据库开销吗?(我正在使用 MySql 5.x
perl - 如何使用 Test::DBIx::Class 为测试套件正确加载夹具?
我对我的DBIx::Class模式进行了一堆测试,并且我正在使用Test::DBIx::Class。这很棒,因为它为我提供了有用的测试功能和加载夹具。它还具有 Test::mysqld 特征,因此我可以动态创建测试 mysqld 实例、部署模式、加载夹具和测试。但是,如果我有一堆测试脚本,那么在通过构造函数实例化时,在每个脚本的开头部署和加载固定装置似乎很愚蠢。
在我的测试期间创建测试数据库并填充它的最佳方法是什么?
sql - 如何使用 COUNT、SUM、CASE 和 BETWEEN 将此 SQL 查询转换为 Perl DBIx::Class?
如何将此 SQL 查询转换为 Perl DBIx::Class代码?