草庐IT

php - 具有复合主键的 Yii 模型

我的MySQL表的主表由两列组成:space_id(INTEGER)和day(DATE)。CREATETABLE`ck_space_calendar_cache`(`space_id`int(11)NOTNULL,`day`dateNOTNULL,`available`tinyint(1)unsignedNOTNULLDEFAULT'0',`price`decimal(12,2)DEFAULTNULL,`offer`varchar(45)DEFAULTNULL,`presale_date`dateDEFAULTNULL,`presale_price`decimal(12,2)DEFAU

php - Yii 中的日期选择器将数据存储为 yy MM d 格式

我有一个表单,其中的输入字段是这样的labelEx($model,'due_date');?>widget('zii.widgets.jui.CJuiDatePicker',array('attribute'=>'due_date','model'=>$model,'options'=>array('mode'=>'focus','dateFormat'=>'dMM,yy','showAnim'=>'slideDown',),'htmlOptions'=>array('size'=>30,'class'=>'date'),));?>error($model,'due_date');?>

php - Yii 多数据库连接

很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visitthehelpcenter.关闭9年前。我有三个数据库,每个数据库都有相同的表和相同的字段,但我不知道如何在Yii中同时从所有三个数据库中获取所有记录。请帮忙

mysql - Yii2 在一侧添加带有 "%"通配符的 LIKE 条件

我想在一侧添加带有%通配符的like条件,例如:wherenamelike'value%'我的代码:Table::find()->filterWhere(['like','name',$_GET['q'].'%'])->all();但是查询结果是:wherenamelike'%value\%%' 最佳答案 您需要将第四个操作数设置为false才能使用自定义wherelike条件:Table::find()->where(['like','name',$_GET['q'].'%',false]);来自docs:Sometimes,yo

mysql - 基于组的每个用户的 Yii2 RBAC 多重分配

我的应用程序在技术上有两个区域,一个全局区域(反馈、用户配置文件、用户设置等)和一个组区域(联系人、项目、组配置文件、组设置等)。我正在为全局区域使用RBACDBManager,它工作得很好,但我在为组区域实现授权机制时遇到了问题。原因是组可以在用户之间共享,并且用户可能在group_access表中有多个分配(id、group_id、user_id、item_name),因为他们可能是多个组的成员,并且他们可能有不同的这些组的权限级别。这是我的身份验证设置:$auth=Yii::$app->authManager;//grouppermissions$manageGroupUsers

php - SQL 语句中文字前的冒号是什么意思?

在变量前使用“:”是什么意思?例如,这段代码中的:userId:publicfunctionremoveUser($userId){$command=Yii::app()->db->createCommand();$command->delete('tbl_project_user_assignment','user_id=:userIdANDproject_id=:projectId',array(':userId'=>$userId,':projectId'=>$this->id));}这是Yii框架下的PHP,MySQL代码。 最佳答案

php - MySql 数据透视表到 Yii CActiveDataProvider

我有一个表结构如下:CREATETABLEIFNOTEXISTS`CustomValue`(`id`int(11)NOTNULL,`customFieldId`int(11)NOTNULL,`relatedId`int(11)NOTNULL,`fieldValue`textCOLLATEutf8_unicode_ci,`createdAt`timestampNOTNULLDEFAULTCURRENT_TIMESTAMP)ENGINE=MyISAMAUTO_INCREMENT=8DEFAULTCHARSET=utf8COLLATE=utf8_unicode_ci;CREATETABLEI

php - 使用 Active Record 在 Yii 中调用数据库 View

我了解如何使用Yii的事件记录环境查询表。我找不到调用mysqlView的文档。另外,我知道如何使用gii工具在事件记录中对表进行建模,但是有没有办法为数据库View执行此操作? 最佳答案 我没有相同的经历,此评论适用于遇到麻烦的人。使用带有一些连接和计算的mysqlView我得到以下错误..app\\models\\db\\WarComplete必须有一个主键。我通过添加...解决了这个问题publicstaticfunctionprimaryKey(){return['id'];}...覆盖我的模型。

php - 在 MySQL 中,删除然后插入更快还是更新现有行更快?

首先,我只想说我正在使用PHP框架Yii,所以如果可能的话,我想留在它定义的SQL语句集中。我知道我可能会创建一个巨大的长SQL语句来执行所有操作,但我宁愿不去那里。好吧,假设我有一个表Users和一个表FavColors。然后我有一个表单,用户可以在其中通过从大量可能的颜色列表中选中一个或多个复选框来选择他们的颜色偏好。这些结果在FavColors表中存储为多行,如下所示(id、user_id、color_id)。现在假设用户进入并更改他们的颜色偏好。在这种情况下,将新颜色偏好设置到数据库中的最有效方法是什么?选项1:批量删除user_id匹配的所有行然后批量插入所有新行选项2:遍历

php - 为什么sql给我错误 "Invalid parameter number: parameter was not defined"

今天我收到错误Invalidparameternumber:parameterwasnotdefinedinmyyiiappwhileupdatingdata。然后我知道我的sql数据库表列包含带有“-”符号的名称,即“table-post”等。然后我将“-”更改为“_”,一切正常。这是查询片段(我用“_”替换了“-”)/*percentagelossessenser*/$attributes['totlcommloss_sensor']=$_POST['totlcommloss_sensor'];$attributes['asp_hour_sensor']=$_POST['asp-h