gpt4 book ai didi

有空格的php yii表列名

转载 作者:行者123 更新时间:2023-12-04 19:38:57 25 4
gpt4 key购买 nike

我正在尝试从 mssql 中的表中建模一个类。列名有空格,我无法删除空格或以任何方式操作列名。我不知道如何将其合并到 yii 中。

在 admin.php 我有

    <?php 
print_r($model);
$this->widget('zii.widgets.grid.CGridView', array(
'id'=>'components-grid',
'dataProvider'=>$model->search(),
'filter'=>$model,
'columns'=>array(
'No_',
'Description',
"Original Asset Number",
'Flag',
array(
'class'=>'CButtonColumn',
),
),
)); ?>

搜索.php
<?php
/* @var $this FixedAssetController */
/* @var $model FixedAsset */
/* @var $form CActiveForm */
?>

<div class="wide form">

<?php $form=$this->beginWidget('CActiveForm', array(
'action'=>Yii::app()->createUrl($this->route),
'method'=>'get',
)); ?>

<div class="row">
<?php echo $form->label($model,'No_'); ?>
<?php echo $form->textField($model,'No_'); ?>
</div>

<div class="row">
<?php echo $form->label($model,'description'); ?>
<?php echo $form->textField($model,'Description',array('size'=>60,'maxlength'=>255)); ?>
</div>

<div class="row">
<?php echo $form->label($model,'Original Asset Number'); ?>
<?php echo $form->textField($model,"Original Asset Number",array('size'=>60,'maxlength'=>255)); ?>
</div>


<div class="row">
<?php echo $form->label($model,'flag'); ?>
<?php echo $form->textField($model,'Flag'); ?>
</div>

<div class="row buttons">
<?php echo CHtml::submitButton('Search'); ?>
</div>

<?php $this->endWidget(); ?>

</div>

我的类(class) FixedAsset.php
<?php

/**
* This is the model class for table "FixedAsset".
*
* The followings are the available columns in table 'FixedAsset':
* @property string $No_
* @property string $description
* @property string $original_asset_number
* @property int $flag
*
*/
class FixedAsset extends AltActiveRecord
{
/**
* Returns the static model of the specified AR class.
* @param string $className active record class name.
* @return Manufacturers the static model class
*/
public static function model($className=__CLASS__)
{
exit(parent::model($className));
return parent::model($className);
}

/**
* @return string the associated database table name
*/
public function tableName()
{
//exit("help");
return "[Spectrum Geo Limited\$Fixed Asset]";
}

/**
* @return array validation rules for model attributes.
*/
/*public function rules()
{
// NOTE: you should only define rules for those attributes that
// will receive user inputs.
return array(
array('name', 'required'),
array('name', 'length', 'max'=>50),
// The following rule is used by search().
// Please remove those attributes that should not be searched.
array('manufacturer_id, name', 'safe', 'on'=>'search'),
);
}*/

/**
* @return array relational rules.
*/
/*public function relations()
{
// NOTE: you may need to adjust the relation name and the related
// class name for the relations automatically generated below.
return array(
'components' => array(self::HAS_MANY, 'Components', 'manufacturer'),
);
}*/

/**
* @return array customized attribute labels (name=>label)
*/
public function attributeLabels()
{
/*return array(
'manufacturer_id' => 'Manufacturer',
'name' => 'Name',
);*/
}

/**
* Retrieves a list of models based on the current search/filter conditions.
* @return CActiveDataProvider the data provider that can return the models based on the search/filter conditions.
*/
public function search()
{
//exit("help");
// Warning: Please modify the following code to remove attributes that
// should not be searched.

$criteria=new CDbCriteria;

$criteria->compare('No_',$this->No_);
$criteria->compare('Original Asset Number',$this->original_asset_number);
$criteria->compare('Flag',$this->Flag);

return new CActiveDataProvider($this, array(
'criteria'=>$criteria,
));
}
}

我的 Controller
/**
* Manages all models.
*/
public function actionAdmin()
{

$model=new FixedAsset('search');
//exit("help2");
$model->unsetAttributes(); // clear any default values
if(isset($_GET['FixedAsset']))
$model->attributes=$_GET['FixedAsset'];

$this->render('admin',array(
'model'=>$model,
));
}

/**
* Returns the data model based on the primary key given in the GET variable.
* If the data model is not found, an HTTP exception will be raised.
* @param integer the ID of the model to be loaded
*/
public function loadModel($id)
{
$model=FixedAsset::model()->findByPk($id);
if($model===null)
throw new CHttpException(404,'The requested page does not exist.');
return $model;
}

尝试使用 Gii 时 apache 日志出错
[Tue Sep 18 10:51:22 2012] [error] [client 172.16.0.85] PHP Fatal error:  Maximum execution time of 30 seconds exceeded in /opt/dam/yii-1.1.12.b600af/framework/db/CDbCommand.php on line 497, referer: http://portal-test/dam/index.php?r=gii/model

最佳答案

该列必须以“名称:类型:标签”的格式指定,其中“类型”和“标签”是可选的。

您收到错误,因为空间破坏了格式。

只需将“名称:”添加到您的列中

您的代码的修改版本:

 $this->widget('zii.widgets.grid.CGridView', array(
'id'=>'components-grid',
'dataProvider'=>$model->search(),
'filter'=>$model,
'columns'=>array(
'Name:No_',
'Name:Description',
"Name:Original Asset Number",
'Name:Flag',
array(
'class'=>'CButtonColumn',
),
),
)); ?>

现在应该可以了。

关于有空格的php yii表列名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12463972/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com