问题标签 [yii-events]
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.
yii - 我什么时候应该在我的 Yii 模型中调用 parent::beforeDelete()
到目前为止,我总是在我自己的代码parent::beforeDelete()
之前调用/检查结果:
(从模型属性之一中去除不正确字符的示例)
但现在,我找到了这个答案:
(删除相关模型的记录示例)
我很困惑?我应该什么时候打电话parent::beforeDelete()
?总是在我的代码执行之前,总是在我的代码执行之后或取决于上下文/我在做什么?
yii - Yii事件中如何使用事务
我知道,如何在纯 DAO或ActiveModel中使用事务,其中事务在调用之前启动$model->save()
并在任何异常时回滚。
但是如何使用事务,如果我唯一可以访问的代码位置(不管,为什么)是Yii 事件?
如果我在那里启动事务,捕获可能的异常并在其上回滚整个事务,那么只会回滚关系模型(此处:菜单项)的删除。它不会阻止(回滚)删除主记录。
FALSE
通过在异常情况下返回我自己的方法来防止删除主记录,beforeDelete
我需要在这里注意吗?或者我应该在 Yii 事件中完全避免交易吗?
php - Yii - 在 beforeFind 之后应用的范围
我创建了一个测试范围,向 DB 条件添加了一些测试条件并将其应用到X::model()->with('Y:test')->findByPk(1)
通过在 beforeFind 中转储 DB 条件我可以看到条件没有添加到那里,但是通过记录 sql 查询我可以看到条件被添加到整个查询这基本上意味着应用范围但在 beforeFind 之后(如上例中的关系尝试)。这没有逻辑意义。我怎样才能解决这个问题?我的 Yii 版本是 1.1.14。
php - Yii 优先考虑相同的日期和时间
嘿,如果有相同的日期和时间,我如何优先考虑。例如,我有 2 个用户在同一日期和时间按下一个按钮。因此,在我的数据库中,我有两个具有相同日期和时间的值。现在我想要的是优先考虑哪个是第一个,哪个是第二个。然后我将只接受第一个的值并显示错误消息“不可用”到第二个
例如:
User 1 press a button = 2014-07-07 03:22:00
User 2 press a button = 2014-07-07 03:22:00
现在从这两个我想优先考虑哪个是第一个,哪个是第二个
下面是我在表中保存数据的代码,我使用 Yii 框架创建了它
这是我的允许预订代码
php - 使用 massLogout 时如何扩展 CBehavior
我制作了一个applicationBehavior.php
位于组件文件夹中的文件,如下所示:
而且我已经注册了config/main.php
:
我会用来在应用程序上进行设置吗?如果我运行控制器来禁用我的应用程序(Maintenance mode
),那么将以一种方式调用:
所有用户都会自动停止,除非我使用用户名的用户:bertho
。
现在的问题是当我(用户名:)bertho
注销时,我会lose control
重新进入我的应用程序。
without login
如果普通用户 ( ) 不受此行为影响,我应该如何创建代码?
我试图检查条件:
接着 :
但是总是报错:session_regenerate_id(): Session object destruction failed
。
我应该怎么办?
php - Yii框架文件夹结构
嗨,我使用 yii framewrok 制作了一个 Web 应用程序。目前它工作得很好,但是当我浏览 yii 论坛时,我意识到我的文件夹结构并不像描述的那样完美。我想让它成为一个正确的 yii 框架支持的 web 应用程序文件夹结构。如果我把 sitecontroller.php 的一部分
这表明,由于文件夹结构,无需进行简单的调用,我就必须进行额外的编码来调用我的脚本。所以任何人都可以帮助我将文件放在我的 yii 目录的正确位置,下图显示了当前的文件夹结构
yii2 - Yii2 事件:如何使用行为的事件方法添加多个事件处理程序?
这是我的行为的类events()
方法。当我触发事件第二个处理程序sendMailHanlder
时,即被调用并且它忽略anotherOne
. 我相信,第二个会覆盖第一个。如何解决此问题以便调用两个事件处理程序?
需要注意的一件事是我将此行为附加到我的Users.php
模型中。我尝试使用模型的init()
方法添加两个处理程序。这样两个处理程序都被调用了。这是我的初始化代码。
yii2 - yii2中afterSave和事件的区别?
我想在新用户注册时向管理员发送电子邮件。我想我可以用两种方式做到这一点。一种方法是使用事件,另一种方法是使用 afterSave。通过使用事件控制器代码
型号代码
我可以使用该afterSave
方法做同样的事情
型号代码
那么这两种方法有什么区别吗?哪个更好用Events
?afterSave()
yii2 - Yii2中如何知道触发的事件是成功还是失败
我在 Yii2 事务中触发了一个事件,我想知道事件处理程序是成功提交事务,还是回滚失败。
全局变量或类 const 是正确的方式吗?
我现在所做的是在事件处理程序中引发错误。