Commit 4668085ef587793dce2e167df6d5f3d80d4be34b
1 parent
6af40417
firs page
Showing
4 changed files
with
86 additions
and
2 deletions
Show diff stats
1 | +<?php | |
2 | + | |
3 | +namespace common\models; | |
4 | + | |
5 | +use Yii; | |
6 | + | |
7 | +/** | |
8 | + * This is the model class for table "{{%fields}}". | |
9 | + * | |
10 | + * @property integer $id | |
11 | + * @property string $table_name | |
12 | + * @property integer $table_id | |
13 | + * @property string $value | |
14 | + * @property string $field_name | |
15 | + * @property string $field_type | |
16 | + */ | |
17 | +class Fields extends \yii\db\ActiveRecord | |
18 | +{ | |
19 | + /** | |
20 | + * @inheritdoc | |
21 | + */ | |
22 | + public static function tableName() | |
23 | + { | |
24 | + return '{{%fields}}'; | |
25 | + } | |
26 | + | |
27 | + /** | |
28 | + * @inheritdoc | |
29 | + */ | |
30 | + public function rules() | |
31 | + { | |
32 | + return [ | |
33 | + [['table_name', 'table_id',], 'required'], | |
34 | + [['table_id','language'], 'integer'], | |
35 | + [['table_name', 'value', 'field_name','field_type'], 'string', 'max' => 255] | |
36 | + ]; | |
37 | + } | |
38 | + | |
39 | + /** | |
40 | + * @inheritdoc | |
41 | + */ | |
42 | + public function attributeLabels() | |
43 | + { | |
44 | + return [ | |
45 | + 'id' => 'ID', | |
46 | + 'table_name' => 'Model Name', | |
47 | + 'table_id' => 'Model ID', | |
48 | + 'value' => 'Value', | |
49 | + 'field_name' => 'Field Name', | |
50 | + 'language' => 'Language', | |
51 | + ]; | |
52 | + } | |
53 | + | |
54 | + public static function getData($id, $model, $type){ | |
55 | + return self::find()->where(['table_id'=>$id, 'table_name'=>$model, 'field_type'=>$type])->all(); | |
56 | + } | |
57 | +} | ... | ... |
common/widgets/FieldEditor.php
1 | +<?php | |
2 | + | |
3 | +use yii\db\Migration; | |
4 | + | |
5 | +class m160128_101543_fields extends Migration | |
6 | +{ | |
7 | + public function up() | |
8 | + { | |
9 | + $tableOptions = null; | |
10 | + | |
11 | + $this->createTable('{{%fields}}', [ | |
12 | + 'id' => $this->primaryKey(), | |
13 | + 'table_name' => $this->string(255)->notNull(), | |
14 | + 'table_id' => $this->integer(), | |
15 | + 'value' => $this->string(255), | |
16 | + 'field_name' => $this->string(), | |
17 | + 'field_type' => $this->string(32)->notNull(), | |
18 | + 'language' => $this->integer() | |
19 | + ], $tableOptions); | |
20 | + | |
21 | + } | |
22 | + | |
23 | + public function down() | |
24 | + { | |
25 | + $this->dropTable('{{%fields}}'); | |
26 | + } | |
27 | +} | ... | ... |
frontend/views/accounts/_form.php
... | ... | @@ -49,7 +49,7 @@ use yii\widgets\ActiveForm; |
49 | 49 | |
50 | 50 | <?= $form->field($user_info, 'about')->textarea(['rows' => 6]) ?> |
51 | 51 | |
52 | -<?= \common\widgets\FieldEditor::widget(['item_id'=> $model->id, 'model'=>'Gallery']); ?> | |
52 | +<?= \common\widgets\FieldEditor::widget(['template'=>'', 'item_id'=> $user->id, 'model'=>'User']); ?> | |
53 | 53 | |
54 | 54 | |
55 | 55 | <div class="form-group"> | ... | ... |