草庐IT

php - 更好的 MongoDB 文档对象映射器设计模式

我是YiiMongoDbSuite的作者,该扩展在ActiveRecord模式中引入了MongoDB支持,与核心Yii中已有的SQL非常相似。我的代码变得非常流行,因为它的编写意图几乎与Yii的SQL数据库的原始方法相同,以缩短学习曲线,唯一的两个主要区别是缺乏关系支持(因为没有这样的mongo中的东西)和不同的标准对象。我发现我的代码非常有趣且易于使用,特别是对于已经使用过Yii的mongo新手,但我也发现/认为在开发新功能和使用我的代码几个月后,ActiveRecord设计模式不是对于面向文档的数据库来说是一个不错的选择,我也认为AR模式本身是mongo真正力量的限制器(即新的Do

php - 在 Yii2 Rest Api 中使用 Yii2-user 进行用户注册

我想在我的项目中实现用户注册/登录过程,其中我的Web客户端应用程序是用angular制作的,移动客户端是在android上。我正在使用REST进行客户端/服务器通信。我在我的yii开发的后端安装了yii2-user。我想要的是创建一个restapi,使我的每个客户端应用程序都使用yii2-user进行用户注册和登录过程。这样在客户端如果用户想要注册请求将由yii-2用户模块处理?关于如何实现这一目标的任何建议?或者在Yii2中有什么更好的方法来制作注册和认证的RESTapi? 最佳答案 使用yii2-userController,

php - Yii 向 CGridView 中的虚拟属性添加过滤器并使其可排序

我有以下模型:User列为{id,user_name,password,user_type}Admin列{id,user_id,full_name,.....etc}Editor列{id,user_id,full_name,...etc}关系是用户:'admin'=>array(self::HAS_ONE,'Admin','user_id'),'editor'=>array(self::HAS_ONE,'Editor','user_id'),Admin:'user'=>array(self::BELONGS_TO,'User','user_id'),编辑器:'user'=>array(

php - Yii framework 2.0如何上传多个文件

使用Yii框架2.0我希望能够上传多个文件。关注Yii2documentation,在UploadMultipleFiles小节下,我有以下模型。classNewsletterextends\yii\db\ActiveRecord{public$attachment_file;publicfunctionrules(){return[[['attachment_file'],'file','maxFiles'=>5],];}publicfunctionupload(){if($this->validate()){foreach($this->attachment_fileas$file

php - Yii2,抛出 NotFoundException 时出错

我有一个简单的代码在我的应用程序的beforeAction事件上运行:'onbeforeAction'=>function($event){thrownew\yii\web\NotFoundHttpException('Therequestedpagedoesnotexist.');},我希望它只显示我的应用程序的404页面,但它抛出以下错误:AnErroroccurredwhilehandlinganothererror:exception'yii\web\NotFoundHttpException'withmessage'Therequestedpagedoesnotexist.'

php - 如何在 Yii2 中创建可重用的小部件

我在我当前的项目yii2中制作了一个简单的小部件.简单地说,它为所有jui主题创建一个选择选项列表,并允许用户更改主题并通过cookie的方式保存。这个小部件需要两个javascript文件,-它们在run()中注册-其中之一是jquerycookies插件。我问是否有办法保存此小部件及其js文件的完整性,使其易于在其他Yii2项目中重复使用,而无需手动复制所有需要的js文件?themeListId)self::$juiThemeSelectId=$this->themeListId;$this->list=$this->createSelectList($this->getTheme

javascript - 如何在 Yii2 Gridview 中自定义默认数据确认对话框

我想更改点击删除按钮时出现的浏览器默认确认对话框(数据确认)框。我想用自定义对话框替换它。以下是我的Gridview代码:$dataProvider,//'filterModel'=>$searchModel,'columns'=>[//['class'=>'yii\grid\SerialColumn'],'account','code',['class'=>'yii\grid\ActionColumn','header'=>'Action','template'=>'{update}{delete}','buttons'=>['update'=>function($url,$mode

php - 如何通过 Yii 中的配置禁用缓存?

在Yii中,我通过config/main.php文件启用了APC缓存:'cache'=>array('class'=>'system.caching.CApcCache',),当我使用Yii的内置缓存方法时它工作得很好:Yii::app()->cache->set('key',$value);但是,有没有办法根据配置暂时关闭它?例如,当YII_DEBUG设置为true时,我不想启用它,并且想要$votes=Yii::app()->cache->get("key");以始终返回false,就像它为空时一样。我试过通过注释掉配置设置来关闭它,但它给出了(并非不合理的)错误:Calltoam

php - 在子目录中部署 yii2

我在一个子目录上部署了yii2。我在重定向时遇到问题。在我的本地主机上,我的项目不在子目录中,所以我没有任何问题。但是当我将它部署在我们的实时服务器上并将项目放在一个子目录中时,我遇到了问题。我的问题是,当我访问我网站的主页时,我被重定向到网站的根目录。举个例子:主站:http://example.com/Yii2站点:http://example.com/myproject/当我尝试转到http://example.com/myproject/时,我预计会被重定向到http://example.com/myproject/login,相反,我被重定向到http://example.c

php - 如何在 yii 2 中通过搜索和过滤获取外键值而不是 GridView 中的键?

我有两个表staff,其中包含id、name和attendance列。staff_id在attendance表中用作外键。我想在考勤gridview中显示员工姓名。出勤模型:publicfunctiongetStaff(){return$this->hasOne(Staff::className(),['id'=>'staff_id']);}publicfunctiongetStaffName(){return$this->staff->name;}在index.php中我使用了这段代码'staff_id','value'=>'StaffName',],]);?>获取员工姓名的值。通过