-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
améliorer la documentation #6
Comments
Il faudra parler aussi des raccourcis :
|
À voir aussi :
|
À voir aussi :
public function validate($insecure_values, $insecure_primary_key = null)
{
$previous_errors = parent::validate($insecure_values, $insecure_primary_key);
$my_errors = array();
if ($insecure_values['table-field'] < 5) {
$my_errors['table-field'] = 'le champ table-field doit être supérieur ou égal à 5';
}
return $this->getModel('fonctions')->array_replace_recursive($my_errors, $previous_errors);
} À détailer pour la gestion d'erreurs avec |
À voir aussi :
$this->renameOptions(array(
'table.champ1' => 'Mon champ 1',
'table.champ2' => 'Mon champ 2',
));
$this->setFieldValues(array(
'1' => 'Nom 1',
'2' => 'Nom 2',
'3' => 'Nom 3',
)); Remarque : $this->overrideField('table.field', 'radio');
|
Je viens de publier la version 4.18 de CRUD qui est à jour avec les éléments cités ci-dessus. Avec aussi : Evolutions HTML5 :
Ajout de wrappers pour faciliter l'utilisation générale
|
Comment choisir le type de liens générés par défaut (sur le listing par exemple) : public function alter_values_index($params = null)
{
$ret = parent::alter_values_index($params);
$this->setFormLinks('read'); // générer des liens vers les pages crud/read
return $ret;
} On peut également surcharger les liens :
|
Propager des paramètres supplémentaires dans les liens générés par CRUD (pour mieux intégrer CRUD dans un site) : // injection systématique (dans tous les liens générés par CRUD) du paramètre 'app' récupéré en GET
public function set_options($request = null, $params = null)
{
$ret = parent::set_options($request, $params);
$this->setOption('url_parameters', array(
'app' => $request->get('string', 'app'),
));
return $ret;
} |
Ajouter des classes CSS aux formulaires générés par CRUD (pour skin bootstrap ou autres), par exemple sur les formulaires de création/modification.
public function alter_values_create_or_update($params = null)
{
$ret = parent::alter_values_create_or_update($params);
$this->data['more_classes_delbutton'] = array_merge_recursive($this->data['more_classes_wrap'], array(
'well'
));
return $ret;
}
$data['more_classes_wrap'] = array_merge_recursive($data['more_classes_wrap'], array(
'well',
)); Remarque On peut aussi renommer les boutons de la même manière ( Surcharges possibles La liste des surcharges possibles dans le fichier public function alter_values_index($params = null)
{
// pour injecter des classes CSS supplementaires, compléter ces tableaux dans une surcharge avec array_merge
$this->data['more_classes_wrap'] = array();
$this->data['more_classes_table'] = array();
$this->data['more_classes_xlsbutton'] = array();
$this->data['more_classes_createbutton'] = array();
$this->data['button_label_create'] = 'Nouveau';
$this->data['button_label_xls'] = 'Exporter';
}
public function alter_values_create_or_update($params = null)
{
$this->data['more_classes_wrap'] = array();
$this->data['more_classes_form'] = array();
$this->data['more_classes_field_wrap'] = array();
$this->data['more_classes_field_key'] = array();
$this->data['more_classes_field_val'] = array();
$this->data['more_classes_field_comment'] = array();
$this->data['more_classes_field_checkbox'] = array();
$this->data['more_classes_backbutton'] = array();
$this->data['more_classes_savebutton'] = array();
$this->data['more_classes_delbutton'] = array();
$this->data['button_label_back'] = 'Annuler';
$this->data['button_label_save'] = 'Enregistrer';
$this->data['button_label_del'] = 'Supprimer';
}
public function alter_values_read($params = null)
{
$this->data['more_classes_wrap'] = array();
$this->data['more_classes_field_wrap'] = array();
$this->data['more_classes_field_key'] = array();
$this->data['more_classes_field_val'] = array();
$this->data['more_classes_img'] = array();
} |
Parler des nouveautés de CRUD 5, notamment : Responsive design
.clementine_crud-list_table_col_clementine_TABLE-FIELD {
width: 120px !important
} Header et footer
Personnalisation des formulaires générés
Personnalisation des liens
Mappings
Hooks
|
Notamment les points suivants :
Expliquer également comment on personnalise l'affichage :
override_fields
, notamment pour créer des champs d'upload, avec resize et génération de miniatures :custom
avec$this->tables
du modèle :inner join
left join
,group by
et tables en lecture seuleusers
, modulepush
)skinbo
sans casser le fonctionnement en AJAX :skinbo=2
view/design/menu_admin.php
index
en créant le fichier view/monmodule/index.php :users=4
, surcharger les contrôleurs des pages à protéger en utilisant :The text was updated successfully, but these errors were encountered: