PHP code example of sergeyugai / backpack-fields-as-classes
1. Go to this page and download the library: Download sergeyugai/backpack-fields-as-classes library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
sergeyugai / backpack-fields-as-classes example snippets
use Backpack\CRUD\app\Library\CrudPanel\CrudPanel;
public function setupOperation()
{
// option 1 (via CrudPanel)
CrudPanel::textField('user')->suffix('...etc');
// option 2 (via builder method)
TextField::name('user')->prefix('1.');
TextField::make('field_name', 'optional_label')
// option 3 (via constructor)
(new TextField('user', 'some label'))->chained_methods...
// option 4 (older ways):
$this->crud->addFields([
TextField::make('field_name', 'optional_label')->other_chained_methods...,
(new TextField('title'))->prefix('1.')
]);
// Has methods generated for all backpack fields and columns!
// Widgets not supported yet.
}
$this->crud->addField(
TextField::make()->name('title')->label('Title')->prefix('whatever')
);
// OR just directly without any CRUD calls:
TextField::make()->name('title')->label('Title')->prefix('whatever')
// Or by using CrudPanel:
\Backpack\CRUD\app\Library\CrudPanel\CrudPanel::addressAlgoliaField('field')
class SomeCrudController extends CrudController
{
public function setup()
{
//...
$this->crud->addField( (new TextField())->...)
$this->crud->addField( (new TextField('field name can be passed'))->...)
$this->crud->addField( (new TextField('field name can be passed', 'field label can be passed'))->...)
//...
}
}
class SomeCrudController extends CrudController
{
public function setup()
{
//...
TextField::name('field name must be passed')->
TextField::make('field name must passed')->...
TextField::make('field name must be passed', 'field label can be passed')->...
//...
}
}
class MyCustomField extends Field
{
... for possible method implementations, just check out source code of other
... fields and find the ones that better fit you for bools and stuff
}
$this->crud->addFields(
FieldsCollection::make()->addFieldsOfType(NumericField::class, [
'min_price_of_item' => 'Min price of item', // 'min_price_of_item' is name, 'Min price of item' is label
'max_price_of_item' => 'Max price of item',
])->toArray()
);
$this->crud->addFields(
FieldsCollection::make()->addFieldsOfType(NumericField::class, [
'min_price_of_item' => 'Min price of item', // 'min_price_of_item' is name, 'Min price of item' is label
'max_price_of_item' => 'Max price of item',
])->prefix('$')->attributes(['step' => '5'])->tab('Pricing')->toArray()
);
class SomeCrudController extends CrudController
{
public function setup()
{
//...
$this->crud->addField($this->titleField())
//...
}
public function titleField(): TextField {
return (new TextField('title))->label('...')->prefix(..);
}
}
bash
php generate.php
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.