我正在为我的Web应用程序使用YII框架.我有一个关于注册外部Java脚本文件的问题.
有人可以帮帮我吗?
我确实看到有两种方法可以注册该外部Java脚本文件
第一种方法
$baseUrl = Yii::app()->baseUrl;
$cs = Yii::app()->getClientScript();
$cs->registerScriptFile($baseUrl.'/js/yourscript.js');
Run Code Online (Sandbox Code Playgroud)
第二个approch
$cs=Yii::app()->getClientScript();
$cs->registerScriptFile(Yii::app()->getAssetManager()->publish('path/to/js'));
$cs->registerScript('id', 'your js here');
Run Code Online (Sandbox Code Playgroud)在第一种方法中,我直接使用registerScriptFile注册并传递java脚本文件
在第二种方法中,我正在注册并发布脚本.这意味着它复制到资产文件夹.(如果我错了,请纠正我)然后最后一步做什么id,一次又一次java script file.($cs->registerScript('id', 'your js here');)
在我的情况下,我从其中一个视图访问它,所以在第二种方法,因为它被发布到资产文件夹,如果10个客户端调用该文件,它发布10次(因为我从视图文件访问它)
我有点困惑.
感谢您的回答
问候
基兰
我有以下情况的PHP:
$inputs = "1,2,3,4,5";
$sql = "SELECT * FROM obj WHERE id IN(:input)";
$commond = Yii::app()->db->createCommand($sql);
$commond->bindValue(":input", $inputs , PDO::PARAM_STR);
Run Code Online (Sandbox Code Playgroud)
我用yii提供db函数:
$inputs = "1,2,3,4,5";
$sql = "SELECT * FROM obj WHERE id IN(:input)";
$commond = Yii::app()->db->createCommand($sql);
$commond->bindValue(":input", $inputs , PDO::PARAM_STR);
Run Code Online (Sandbox Code Playgroud)
但查询结果是正确的,所以如果这样我该怎么办?
我有一个超过5列的表,我想隐藏一些列,以便只有在选择了某些行或展开它时才会显示这些列.
我正在使用yiiframework的CGridView,那我怎么能这样做呢?
任何帮助都很明显..
我想要这样的功能,以便在扩展特定记录时我可以看到隐藏的列值

我正在玩我新安装的yii框架,并尝试通过命令行编译我的第一个webapp.当我运行时,我yiic webapp ../testdrive在控制台中收到此错误:
"php.exe" is not recognized as an internal or external command, operable program or batch file
Run Code Online (Sandbox Code Playgroud)
我需要编辑我的php.ini文件吗?
我目前正在Windows 7上运行WAMP Webserver
我是yii框架的新手.在我的网站中,gii显示错误
错误403您无权访问此页面.
我在这样的配置文件中设置了gii
'gii'=>array(
'class'=>'system.gii.GiiModule',
'password'=>'test123',
'ipFilters'=>array('192.168.0.101','127.0.0.1','::1'),
),
Run Code Online (Sandbox Code Playgroud)
仍然显示错误
我希望在给定的日期范围内按属性进行搜索,并按创建的日期排序,但没有运气.
$user = array('user_country'=>1 ,'user_gender'='M');
$rows = User::model()->findAllByAttributes($user,array("user_date_created BETWEEN '2012' AND '2013' " ,'order'=> 'user_date_created') );
Run Code Online (Sandbox Code Playgroud)
先感谢您.
我有这个网址
http://example.com/index.php/controller_name/action_name?queryString=123
Run Code Online (Sandbox Code Playgroud)
这个网址工作正常但是当我尝试使用像旧版Yii中的queryString时
http://example.com/index.php/controller_name/action_name/queryString/123
Run Code Online (Sandbox Code Playgroud)
我收到"无法解决请求"错误.
我已经在配置文件中启用了prettyurl,以下网址正在运行
http://example.com/index.php/controller_name/action_name.
Run Code Online (Sandbox Code Playgroud)
我的配置看起来像:
'urlManager' => [
'class' => 'yii\web\UrlManager',
'enablePrettyUrl' => true,
'showScriptName' => false,
'rules' => [
'<controller:\w+>/<id:\d+>' => '<controller>/view',
'<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>',
'<controller:\w+>/<action:\w+>' => '<controller>/<action>',
'module/<module:\w+>/<controller:\w+>/<action:\w+>' => '<module>/<controller>/<action>',
],
],
Run Code Online (Sandbox Code Playgroud)
我错过了什么?
我想学习Yii2成员资格并使用Yii来使用数据库存储和检索角色.
我已阅读安全授权以及如何向用户添加角色?并且有人有Rbac的工作示例吗?并尝试使用yii2-admin扩展并尝试了解Yii如何管理用户角色,但我找不到任何工作样本或简单的分步示例.
请指导我并告诉我最简单的解决方案.
我只想尝试Yii2.现在我已经创建了一个yii2基本应用程序.接下来我想要做的是改变主题.我有一个HTML文件,我想将此应用程序主题更改为HTML.我已经经历了yii2主题但它不是我想要的我想要将所有css,js,图像,HTML的字体添加到我的项目中.我怎么能在yii2中做到这一点Plz有人帮助我.
我正在尝试使用i18l设置网站的前端翻译.这是我在前端/配置上放置的i18l.php文件
<?php
return [
'sourcePath' => 'frontend',
'languages' => ['en-US', 'pt-BR'] , //Add languages to the array for the language files to be generated.
'translator' => 'Yii::t',
'sort' => false,
'removeUnused' => false,
'only' => ['*.php'],
'except' => [
'.svn',
'.git',
'.gitignore',
'.gitkeep',
'.hgignore',
'.hgkeep',
'/messages',
'/vendor',
],
'format' => 'php',
'messagePath' => 'frontend' . DIRECTORY_SEPARATOR . 'translations',
'overwrite' => true,
];
Run Code Online (Sandbox Code Playgroud)
在这里我的main.php也在前端
(...)
'language' => 'en-US',
'components' => [
'i18n' => [
'translations' => [
'app*' => [
'class' …Run Code Online (Sandbox Code Playgroud)