问题标签 [gii]

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

dynamic - yii2 中的自定义字段,没有生成器并使用数据库

如何在 Yii-2 中添加自定义字段。我有表用户,我有字段并创建表单,但后来用户可以添加自定义字段,所以我如何在没有生成器的情况下在视图中创建这些字段。

0 投票
2 回答
1063 浏览

gridview - Yii2:GridView 中 Gii 生成的属性

我对 Yii2 属性的工作方式有点困惑。如果我有两个具有一对多关系的表(例如传统、文化)(即一个传统可能存在于多种文化中),我可以使用 Gii 生成的代码并在模型Tradition中获取类似于@property Culture $culture的东西,所以我可以使用(在传统视图索引中):

但是像传统、书、aux_tradition_book表中的多对多关系呢?Gii 会自动生成@property Book[] $books,但是如何在 GridView 中使用这样的数组来显示一堆引用相同传统的书籍?

谢谢你的帮助。

0 投票
0 回答
654 浏览

many-to-many - 在 Yii2 中,如何将多对多关系合并到 crud 中

抱歉,因为我是 MVC 结构(和框架,就此而言)的新手。

在使用 gii 生成我的 CRUD 后,我可以修改并获得给定的“创建”表单,以显示由相关一对多表中的选项填充的下拉列表。到目前为止,一切都很好。

但是,我对如何以同样的方式处理多对多关系感到困惑。

假设我有一个 genPage 表和一个由 genPageHasCategories 联结表连接的类别表。

如何让 genPage 创建表单包含由类别表填充的复选框选项部分?(复选框,而不是下拉菜单,因为 m-to-m 的全部意义在于允许多选;另外,我想从类别中的“名称”字段返回值,因为随机数字 id 不太有用在用户界面中。)

当然,我期待 Yii2 能神奇地将这些关系保存到 GenPageHasCategories 联结表中。

我知道它与 viaTable() 和怀疑 link() 方法有关,但我的菜鸟大脑无法弄清楚如何格式化适当的代码片段以及将它们粘贴在哪里。控制器?模型?看法?以及每个控制器(或模型)中的哪一个——genPage、类别或连接表的控制器(或模型)?

我看到 gii 有助于在 GenPage.php 模型中创建以下内容:

我试图找到一个方便的扩展或小部件,但似乎还没有启动和运行。(虽然giiant通过视图页面上的一个方便的下拉菜单有用地指出了这种关系,但它仍然将连接表的CRUD分开(并且难以理解地用id而不是人类可读的名称填充它们。它还在控制器中生成子文件夹和模型,进一步混淆了这个菜鸟。)

0 投票
1 回答
10294 浏览

yii2 - Yii2 Gii 表前缀

我总是设置表前缀 - 对于这篇文章,可以说我的前缀是abc_. 所以在common\config\main-local.php. 我有:

我在 Yii1 上工作并使用 gii 生成模型。在这个版本中,它生成了如下文件:table.php.

现在我使用 Yii2 并了解不同之处: gii生成abc_table.php. 是的 - 我检查了“使用表前缀”。

这是不行的,因为前缀应该是透明的。谁能告诉我我做错了什么?

0 投票
2 回答
1347 浏览

php - Yii2 - Gii 模型关系 - 为什么函数名后面有 0?

在查看其他人的代码、指南、教程等时,我还没有在网上看到这个。

当我使用 Gii 生成模型时,关于关系的函数后面都有一个零。


例子:


BenefitTypes 是一个 id 到名称的映射:

在“benefit”表中,它有一个名为“type”的列,它与“benefit_types”表的“id”列有关。

我虽然我应该能够做到(在/views/benefit/index.php)'type.name',但它也不起作用。它将列名称更改为“类型名称”并将“(未设置)”放入数据表中......

例子:

发生了什么事,为什么它的行为不像它应该的那样?


更新

我开始认为关系函数名称的 0 后缀,即:getType0,是由于表中使用“类型”作为列名以避免重复或混淆。虽然我找不到这个记录,所以想对此有一个明确的答案。

我将函数名称更改为 getTypeRelation()。然后在 index.php 视图中,对于 detailview 小部件,使用了“typeRelation.name”,它通过关系返回名称就好了。

0 投票
2 回答
522 浏览

model - Yii2 Gii 没有显示生成按钮

我让 Gii 模块工作,但是当我尝试使用生成器创建模型时,我单击预览,页面刷新但没有任何反应 - 没有生成按钮,没有警告,没有错误,日志中没有任何内容。

非常感谢任何建议或评论。

编辑:预览为空,这似乎是问题所在。任何人都可以发布他在调试器中的内容吗?谢谢。

预览为空!??

0 投票
1 回答
7771 浏览

php - Yii2 - 以一种形式保存多个相关的 ActiveRecord 模型

这是表结构:

它实际上是数据库表中的继承关系。

然后我使用gii为两者生成具有关系函数的模型,并为 ChildTable 生成 CRUD 操作。这是 ChildTable 中的关系函数:

在 ChildTable 的生成形式中,我想更新description它的 BaseTable 的属性。这是 ChildTable 的原始形式:

尝试1:

我在下面添加代码字段:

我收到了这个错误:

尝试2:

我在下面广告代码字段:

我得到另一个错误:

尝试3:

我使用relation来获取BaseTable模型,代码如下:

我仍然得到错误:

主意:

我有一个想法,我可以创建一个新的 viewModel 来映射来自BaseTable和的所有属性ChildTable。但是我想知道是否有一个快速的解决方案来实现ActiveRecord基于生成的代码保存多个相关模型gii?谢谢!

0 投票
2 回答
855 浏览

yii - 使用 Gii afer 更新模型文件

我正在学习 Yii,我想知道我是否使用 Gii 生成模型和 CRUD 文件,然后我手动修改了这些文件,然后我更改了我的数据库,我应该再次运行 Gii 吗?它会覆盖我在模型文件中的更改吗?如果是这样,在不丢失我以前的更改的情况下更新我的模型、控制器和视图文件以反映数据库中的更改的最佳解决方案是什么?

0 投票
1 回答
491 浏览

php - Yii 框架 config/main.php 不包含可以使用的 gii

我一直在使用 vagrant 和 yii 框架,我已经创建了一个虚拟服务器,并将我的 YII 框架放在那里。它已连接到我的数据库并且工作正常,但是当我去时,index.php?r=gii我得到以下信息

好吧,我在网上看了看,也从这个网站上找到了一些解决方案,例如转到 config/main.php 并从那里更改,allowedIPs但是,当我转到 main.php 时,这就是我所看到的:

这是我的 main-local.php:

我该如何解决这里的gii问题?

0 投票
1 回答
453 浏览

yii2 - 如何使用宅基地访问gii

我使用宅基地作为我的 yii2 教程的开发环境,我的问题是我无法配置下面的行来访问 giihttp://hostname/index.php?r=gii