问题标签 [yii]

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 回答
4912 浏览

php - 在 Yii 中,我怎样才能有一个循环遍历对象数组的表单?

我正在尝试创建一个 Yii ActiveForm 来编辑对象列表中的值,并以表格的形式呈现。

涉及的类:

我的观点:

文本字段被渲染并且 Yii 没有抱怨,但它们不包含正确的值。

有没有办法可以使这项工作,或者是否有更好的方法来遍历表单中的对象数组?

0 投票
1 回答
4437 浏览

javascript - 在 Yii 中使用 JavaScript(XWF/SWF 图表)

我正在尝试使用 Yii 加载 XML/SWF 图表并且遇到了一些麻烦。据我所知,问题似乎在于 Yii 在标题中加载脚本标签的顺序。

这就是我的工作 test.php 脚本(减去 Yii)生成的标头中生成的源代码的样子。

现在我试图让 Yii 使用这段代码完成同样的事情。

p>

这就是我得到的

p>

问题似乎是加载 AC_RunActiveContent.js 的行的位置。当我将它移到我的测试脚本中的其他变量之上时,它会破坏测试脚本。有什么办法可以强制 Yii 按照我想要的顺序编写命令?

2010 年 8 月 23 日更新-已解决!!!

在 Gray Teardrop 的建议下,我得以完成这项工作。鉴于我已经为此苦苦挣扎了好几天,我想我会为其他人发布完整的解决方案。

首先,我安装了 XML/SWF 图表protected/vendors/Maani

show.php(包含图表的视图)

p>

src注意和的相对路径信息FlashVars是必需的。

0 投票
3 回答
13443 浏览

javascript - jQuery ajax 调用后颜色框(使用实时)不重新绑定

我有一个通过 ajax 加载的元素列表(使用 jQuery 的 .load())。每个元素旁边都有一个(编辑)链接,该链接将灯箱(使用颜色框)设置为一个小编辑表单。当灯箱关闭时,我使用 onClosed 回调重新加载要显示的 ajax 列表以及在编辑期间所做的更改。

colorbox 调用如下所示:

我的列表如下所示:

我查看了彩盒源代码,发现它用于jquery live()绑定。这里是:

您可以在上面看到 colorbox 的工作方式是绑定到“boxElement”,这是它创建的一个名为“cboxElement”的类。在 live() 绑定颜色框之前,将此类 (cboxElement) 添加到与选择器匹配的所有元素(在我的示例中为 .colorbox),然后绑定到这个新类。

所以认为如果我将颜色框绑定放在 ajaxed 内容之外,它会在我用 ajax 替换 #featureList div 后绑定到链接,因为 live() 应该“现在或将来”绑定到元素。但这不是因为它绑定到 .cboxElement 而不是 .colorbox 所以当 ajax 重新加载 colorbox 时不会将 .cboxElement 类重新添加到元素中。

我尝试在 ajax 内容中调用 $.fn.colorbox.init() 以让 colorbox 将 .cboxElement 类重新添加到元素中,但这没有效果。(我在处理 shadowbox 时会这样做,但它似乎对 colorbox 不一样。)

因此,我尝试将所有颜色框代码放在 ajax 内容中。当我这样做时,颜色框绑定正在堆叠/链接。所以第二次调用它时,我得到了两个颜色框(并且必须按两次“关闭”按钮才能返回主屏幕)。第三次我得到三个。这是因为当我再次调用 colorbox 时,它添加了 .cboxElement 类,使旧的 live() 绑定再次处于活动状态,并且它还添加了另一个 live() 绑定。我试图通过首先调用 .die() 来清除 .live() 绑定,但由于某种原因它不起作用。

我找到了一些相关的帖子,但没有一个解决了这个问题,因为 colorbox 已经在使用 live():
Problem with jQuery Colorbox
jQuery AJAX table to a page but now the colorbox overlays no longer work

还有其他想法吗?我真的很难过。我觉得我应该切换到不同的灯箱,但总的来说,我喜欢彩色箱,它在网站上的其他任何地方都运行良好,直到出现这个 ajax 问题。

谢谢!!!

编辑:

所以,在这种情况下,我的问题是我的框架(Yii)在每个 AJAX 调用中都包含一个重复的colorbox脚本,这导致了问题。所以要小心!

对于没有遇到重复脚本问题的每个人,我是: @Relic 在下面指出,您可以通过执行自己的jQuery delegate()绑定来“回避”一些问题,该绑定执行颜色框的“直接调用”,而不是依赖于 colorbox 的默认live()绑定。对于我的情况,我会像这样调整它:

0 投票
2 回答
24692 浏览

php - Yii 多页表单向导最佳实践

我正在尝试使用 Yii 构建一个多页表单,但对 PHP 和 Yii 还是很陌生,我想知道编写多页表单的最佳实践是什么。到目前为止,我计划做的是添加一个名为“step”的隐藏字段,其中包含用户在表单中的当前步骤(表单分为 3 个步骤/页面)。因此,考虑到这一点,这就是我计划如何处理用户单击控制器中的上一个/下一个按钮:

这种方法有意义吗?或者我是否偏离了基础,并且在 Yii/PHP 中有更好、更优化的方法来做到这一点?

谢谢!

0 投票
4 回答
3857 浏览

php - 社交网站的 Zend vs Yii vs CI

我必须在上面提到的开发大型社交网站的框架之间做出选择。之前在几个项目中使用过 Zend 框架,我偏向于使用它,但是,我想有一个公平的意见。

我们主要是在寻找性能和可扩展性。

0 投票
1 回答
905 浏览

php - Yii框架“元数据库模型”创建+postgres继承

我有几个数据库表,女巫是使用从一个表继承来构建的,女巫是一种用于创建新表的“模板”,现在我有一组业务逻辑方法,它们处理从模板继承的列,仅使用附加列作为模型展示的参数,它们对逻辑没有意义。

目标是沿所有这些表共享业务逻辑方法,我知道,现在可以通过添加另一个类来扩展 CActiveRecord,并从它扩展每个模型,或者将逻辑打包为行为并将其附加到模型中。但这将需要为每个表/模型至少编写“转储”类文件,但这些表“活”在系统中,并将随着系统生命周期被删除/创建。

有没有办法编写某种“元模型”女巫将作为参数、表名,或者以某种方式为表“即时”创建模型并附加业务逻辑?

我在 Yii 用户板上问过这个问题,但没有找到任何回应:/ 我认为这是某种代码挑战,所以欢迎任何帮助/线索 :)

[编辑]

一些示例:不同客户端设备的表

  • hfc.cable_modem
  • lan.switch_port
  • lan.voip_gateway
  • (在不久的将来,系统中将添加更多“技术”,因此客户端设备的新表,并且有可能放弃对其中一些的支持)

每个表都继承自模板表 client_device 女巫具有以下字段:

  • client_id
  • 服务标识
  • core_device_id
  • (加上一些用于时间戳行为的元列,如创建、更新、更新等)

就像您看到的业务逻辑仅在 ID 上运行,并且每个表都相同,其余列用作设备参数存储/呈现信息。

我的目标是拥有“元模型”客户端设备,女巫将对所有这些表应用业务逻辑,并且仍然为每个表提供对特定字段的访问,而无需为每个表编写模型类(女巫我'每次添加新技术或将来放弃对给定技术的支持时,我都必须这样做)

0 投票
2 回答
3931 浏览

sql - 尝试插入时 MySQL 和外键冲突

我正在写敏捷 Yii 书。

无论如何,我正在尝试执行此命令:

我得到这个错误:

所以..我想让我们看看 tbl_project 表是否有 project_id=1。快速 SELECT * FROM tbl_project; 并且项目存在。

好的,那么让我们检查一下用户, SELECT * FROM tbl_user; 是的 2 个用户,ID 为 1 和 2。

我究竟做错了什么?有错别字吗?敏捷 yii 书有几个错别字,但没有那么严重,而且太新,所以没有报告勘误表(已经检查过)。

这是源代码中的数据库模式:

无论如何,提前谢谢!

编辑:澄清该项目确实存在^^。

mysql> 从 tbl_project 中选择 id、name;

+----+-------------------+

| 编号 | 姓名 |

+----+-------------------+

| 6 | 项目 1 |

| 1 | 项目僵尸 1 |

+----+-------------------+

2 行(0.00 秒)

0 投票
2 回答
3773 浏览

activerecord - AR模型中的关系函数,多对一关系

所以这是场景:

我有两个表,问题和项目。

一个项目可以有多个问题,一个问题可以恰好是一个项目。

由于Issue是多对一的,你必须定义它吗?

因为我知道在项目模型中我有:

对于问题模型,我只有外键:

我猜任何关系都不需要定义?

先感谢您。

顺便说一句,我正在写敏捷 Yii 书,最后我问了自己这个问题。AR 类中有一个独一选项(http://www.yiiframework.com/doc/guide/database.arr)。

但是由于某种原因,这种情况是可选的吗?

0 投票
2 回答
5409 浏览

php - 从 WSDL 生成 PHP 代码(用于服务替换)

我们现在很少有 Web 服务女巫由外部应用程序处理,我们计划将它们替换为新的自己的实现。

是否有一些工具/类女巫会生成与我们现在拥有的那些 WSDL 100% 兼容的库存 php 接口和结构?

我将不得不重新实现这个 wsdl 接口,并且我必须确定,该接口本身(不是逻辑实现)不会以任何方式改变(即使 WSDL 位置也必须保持原样)

我发现了一些项目,例如:http ://code.google.com/p/wsdl2php-interpreter

如果你们中的任何人使用过类似的东西,请与我分享提示、工具推荐等。

PS 重新实现将在 Yii 框架和 CWebService 类之上进行

0 投票
4 回答
2320 浏览

php - 动态生成表单/动态表单/从模型生成的表单

有没有人建议构建类似 wufoo.com 的应用程序?我正在构建一个应用程序,其中登录用户以类似的方式创建表单......我想知道 zend、symfony 或 yii 是否最适合这个?

我将在这里收集提示,以便其他人更容易看到。

可以帮助解决此问题的框架的优势:

  • Symfony 有原则(但是表单是通过运行脚本来部署的?)
  • Zend 有其形式和子形式的集成(也许集成学说是可能的?)
  • Zend 有 form_decorators,但它们的学习门槛很高。
  • yii 有它的表单生成器和良好的 PDO 数据库连接

还是有任何其他框架可以简化“动态生成表单”?

PS。djangos 解决方案非常有趣,但它需要在 php 中。