Introduction
, (*1)
This is form field's widgets for the yii2 framework with the next field types:, (*2)
- text
- textarea
- ckeditor
- ckeditorAdmin
- file
- checkbox
- dropdown
- password
Dependencies
Installation
Base install
Via composer:, (*3)
composer require "itstructure/yii2-field-widgets": "~1.2.4"
, (*4)
or in section require of composer.json file set the following:, (*5)
"require": {
"itstructure/yii2-field-widgets": "~1.2.4"
}
and command composer install
, if you install yii2 project extensions first,, (*6)
or command composer update
, if all yii2 project extensions are already installed., (*7)
If you are testing this package from local server directory
In application composer.json
file set the repository, like in example:, (*8)
"repositories": [
{
"type": "path",
"url": "../yii2-field-widgets",
"options": {
"symlink": true
}
}
],
Here,, (*9)
yii2-field-widgets - directory name, which has the same directory level like application and contains yii2 field widgets package., (*10)
Then run command:, (*11)
composer require itstructure/yii2-field-widgets:dev-master --prefer-source
, (*12)
Usage
Requirements
That widgets are designed to work in form with an active model, which is inherited from
yii\db\ActiveRecord., (*13)
Single mode
To use this mode, don't set languageModel
. That will be null., (*14)
Multilanguage mode
All fields will be with a language postfix:, (*15)
title_en, (*16)
description_en, (*17)
title_ru, (*18)
description_ru, e t. c., (*19)
For this mode it's necessary to have Language model with some of languages records., (*20)
Example:, (*21)
$form = ActiveForm::begin();
echo Fields::widget([
'fields' => [
[
'name' => 'title',
'type' => FieldType::FIELD_TYPE_TEXT,
],
[
'name' => 'description',
'type' => FieldType::FIELD_TYPE_CKEDITOR_ADMIN,
'preset' => 'full',
'options' => [
'filebrowserBrowseUrl' => '/ckfinder/ckfinder.html',
'filebrowserImageBrowseUrl' => '/ckfinder/ckfinder.html?type=Images',
'filebrowserUploadUrl' => '/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Files',
'filebrowserImageUploadUrl' => '/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Images',
'filebrowserWindowWidth' => '1000',
'filebrowserWindowHeight' => '700',
]
],
],
'model' => $model,
'form' => $form,
'languageModel' => new Language()
]) ?>
echo Html::submitButton($model->isNewRecord ? 'Create' : 'Update', ['class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary']) ?>
ActiveForm::end();
License
Copyright © 2018-2023 Andrey Girnik girnikandrey@gmail.com., (*22)
Licensed under the MIT license. See LICENSE.txt for details., (*23)