问题标签 [fuelphp-orm]

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.

0 投票
1 回答
351 浏览

fuelphp - 从左加入fuelphp获取结果

我有一个表名“帐户”。它具有名为“Id”、“Name”、“primary_user_id”的三列。我想显示与用户 ID 对应的 ID、名称和名称。我的意思是我没有使用左连接。我收集使用

在模型中:-

鉴于:-

我正在尝试获取与 primary_user_id 对应的名称值。请帮助我如何实现它。

0 投票
1 回答
295 浏览

php - FuelPHP - 关系表中的多对多和字段?

我认为 FuelPHP 不支持此功能,但我想知道最好的方法......

我有 3 个 SQL 表:users, modules, modules_users. 一个用户有很多模块,一个模块可能有很多用户(跟随它的人)。在modules_users中,有actual_state该用户的模块。

modules_users有这些字段: - id - user_id - module_id - actual_state - previous_state -updated_at

我需要两个 ORM 模型:Model_UserModel_Modules. 我想访问这样的相关对象:

我怎么能那样做?

0 投票
3 回答
336 浏览

php - FuelPHP - 在 ORM 模型中使用核心类

如何在我的ORM模型中使用核心类?

正在工作中:

不工作:

错误

谢谢!!

0 投票
1 回答
449 浏览

php - fuelphp : has_many orm 的设置条件

尝试在fuelphp上为has_many orm设置条件,但这不起作用我只是在尝试仅获取正在进行的邀请时将所有相关邀请返回,这是has_many的样子,有什么建议吗?

0 投票
2 回答
158 浏览

php - FuelPHP 的 ORM 包没有正确排序项目

我有一个带有“标题”字段的表,我正在尝试获取该表中的所有行,并按标题 ASC 对它们进行排序。我正在测试的四条记录的标题是:

另一个测试

我的新页面

新的

啊啊啊

这也是返回行的顺序,这是不正确的。'aaa' 应该在列表的顶部。我认为问题出在小写和大写字符上。

我想按 LOWER(title) 而不是按标题订购,但是我在 FuelPHP 中进行这项工作时遇到问题。

我用来选择记录的代码是:

无论他们的“案例”如何,我如何在订单项目上方制作代码?

编辑:

@Uru,感谢您的反馈:) 我尝试了以下代码,所有变体都会导致 SQL 或 PHP 错误:

0 投票
0 回答
102 浏览

fuelphp - 使用 Forge 插入数据库但未获取插入 ID

我是 Fuel 的新手...让我的脚本使用以下代码插入记录:

我想我应该能够通过 $address->id 获取插入 ID,但它是空的。

我不确定我做错了什么?

我们正在使用 pg_swl 不确定这是否有任何区别。

0 投票
3 回答
372 浏览

php - ORM:在 FuelPHP 中更新模型时更改父级的“updated_at”时间戳

假设我有一个 Model_Post,它有_may Model_Comment。

每次保存新评论时,有什么方法updated_at可以更新 Model_Post 的字段?我检查了观察者的文档,但我找不到如何以“ORM 方式”进行操作。

此代码似乎不起作用:

我使用以下代码创建了一个新评论:

0 投票
2 回答
367 浏览

orm - 使用 FuelPHP 进行多对多关系的订购

我在对多对多关系进行排序时遇到了问题。我想要实现的目标似乎应该相当简单,但是在我多次与 Fuel 碰撞之后,我仍然无法让它发挥作用。

(顺便说一句,我意识到之前或多或少有人问过这个问题,但是因为(a)当时不可能对延迟加载关系进行排序,并且(b)我有更多我遇到的确切问题的详细信息,我认为值得作为一个单独的问题提出......)

这是我遇到的问题:

我有一个“项目”模型。项目可以有孩子(也是项目),通过“items_items”表与“parent_id”和“child_id”列通过多对多关系连接。“items_items”表还有一个“sortorder”列,可以设置子项的顺序。

为这种关系创建一个单独的模型对我来说似乎有点矫枉过正,所以当父项被保存时(通过 Model_Item 上的“_event_after_save”方法),观察者会更新顺序,该观察者会更新子项的排序顺序。这似乎工作正常。

但是,我遇到的问题是我可以使用延迟加载急切加载来获得排序顺序,但不能同时使用两者。无论哪一个有效,另一个都会引发 Fuel 错误,因此目前让渴望加载和延迟加载都起作用的唯一方法是在渴望加载时废弃 'order_by' 子句。以下是我尝试定义“孩子”关系的三种方式:

方法#1

  • 这是FuelPHP 文档中相关页面建议的方法。
  • 急切或延迟加载没有错误,但无论哪种方式,order_by 都不受尊重(子项按 id 排序,而不是按 sortorder)

    /li>

方法#2

  • 使用急切加载按需工作
  • 延迟加载导致燃料错误( “未找到列:1054 Unknown column 'items_items.sortorder' in 'order Clause'”)这似乎是因为 items_items 在 JOIN 子句中别名为 't0_through',但在 ORDER BY 中没有条款。

    /li>

方法#3

  • 根据需要使用延迟加载
  • 急切加载导致燃料错误(实际上与上面的第 2 次拍摄相反)

    /li>

在一个有点绝望的hack中,我尝试通过定义两个单独的关系('children'和'child')来组合上面的方法2和3 - 一个用于急切加载,另一个用于延迟加载,但它仍然会破坏我的应用程序,因为它使删除过程会引发类似的错误。我可以尝试解决这个问题,但我觉得那只会是一堆黑客攻击。相反,我想要的是一种可靠的订购子项目的方法,无论它们是渴望加载还是延迟加载。Fuel的文档建议这应该是可行的(方法#1,上面),但我就是无法让它工作......

任何帮助将不胜感激!

0 投票
1 回答
740 浏览

fuelphp - Fuel PHP - to_array() 方法和多个 belongs_to 关系和急切加载

我正在尝试将一些遗留数据模型/模式迁移到燃料 API,并且在to_array()具有两个$_belongs_to属性的模型上遇到了一个奇怪的问题。

当我在不使用该to_array()方法的情况下加载模型时,我会正确地接收到两个相关的项目并通过预先加载,但是一旦我通过此函数将它们传递以转换数据以使其可被新 API 消化,它将删除第二个$_belongs_to属性。如果我重新排序数组中的道具$belongs_to,它将显示数组中的第一个项目。

我的问题是,如何在不丢失第二个关系的情况下将此数据转换为数组?

以下是一些清理后的示例,以方便参考:

交易模式:

事务控制器:

0 投票
1 回答
31 浏览

orm - FUELPHP ORM:数据库视图'viewname'的定义没有列

我在 FuelPHP 中使用 ORM 来获取我在数据库中创建的表视图上的一些数据。

我按照此处给出的说明进行操作,但出现如上标题所示的错误。这是错误的屏幕截图以供参考(http://prntscr.com/72ssqc)。

这是代码: http: //pastebin.com/ips5VCzV

这是视图表的屏幕截图:http: //prntscr.com/72st1e