Décrivez ici votre problème.
CKEditor non visible, ne s'affiche pas.

Bonjour,

J'ai installé FOSCKEditorBundle en suivant les conseils sur le site de Symfony:

  • composer require friendsofsymfony/ckeditor-bundle

  • php bin/console ckeditor:install

  • php bin/console assets:install public

  • Dossier fosckeditor bien présent dans public

J'ai sauté la partie Webpack Encore car je ne souhaite pas utiliser cette fonctionnalité (toutefois j'ai fait un essai en le configurant et le souci reste idem)

Ce que j'obtiens

Aucune erreur visible
aucun code erreur
Pas d'éditeur CKEditor dans Easy Admin juste une Textarea normal
J'ai essayé TextEditorField idem (plus d'éditeur TextEditor)

ma configuration

Version Symfony 6.1.6
php 8.1.5
npm --version 8.15.0

// fos_ckeditor.yaml

fos_ck_editor:
    configs:
        main_config:
            toolbar: basic // ou full ect idem
<?php

namespace App\Controller\Admin;

use App\Entity\Page;
use FOS\CKEditorBundle\Form\Type\CKEditorType;
use EasyCorp\Bundle\EasyAdminBundle\Config\Crud;
use EasyCorp\Bundle\EasyAdminBundle\Field\SlugField;
use EasyCorp\Bundle\EasyAdminBundle\Field\TextField;
use EasyCorp\Bundle\EasyAdminBundle\Field\DateTimeField;
use EasyCorp\Bundle\EasyAdminBundle\Field\TextareaField;
use EasyCorp\Bundle\EasyAdminBundle\Field\TextEditorField;
use EasyCorp\Bundle\EasyAdminBundle\Controller\AbstractCrudController;

class PageCrudController extends AbstractCrudController
{
    public static function getEntityFqcn(): string
    {
        return Page::class;
    }

    public function configuerCrud(Crud $crud): Crud
    {
        return $crud
        ->setEntityPermission('ROLE_ADMIN')
        ->setEntityLabelInSingular('page du site')
        ->setEntityLabelInPlural('pages du site')
        ->setPageTitle(Crud::PAGE_INDEX, 'Liste des pages du site')
        ->setPageTitle(Crud::PAGE_EDIT, 'Édition de la page')
        ->setDefaultSort(['createdAt' => 'ASC'])
        ->addFormTheme('@FOSCKEditor/Form/ckeditor_widget.html.twig');
        ;
    }

    public function configureFields(string $pageName): iterable
    {
            yield TextField::new('name');
            yield SlugField::new('slug')
                ->setTargetFieldName('name')
                ->setUnlockConfirmationMessage('Il est fortement recommandé d\'utiliser les slugs automatiques, mais vous pouvez les personnaliser')->hideOnIndex();
            yield TextEditorField::new('content', 'Contenu')
                ->setFormType(CKEditorType::class)
                ->hideOnIndex();
            yield DateTimeField::new('createdAt', 'Création')->onlyOnIndex();
            yield DateTimeField::new('updatedAt', 'Modification')->onlyOnIndex();
            ;
    }
}

Je me suis dit que peut-être le problème venait de ma configuration d'un fichier .css ... mais en désactivant la parti du code le problème reste le même

    // public function configureAssets(): Assets
    // {
    //     return Assets::new()
    //         ->addCssFile('./admin/easyadmin/css/styles.css')    
    //     ;
    // }

composer.json

{
    "type": "project",
    "license": "proprietary",
    "minimum-stability": "stable",
    "prefer-stable": true,
    "require": {
        "php": ">=8.1",
        "ext-ctype": "*",
        "ext-iconv": "*",
        "doctrine/annotations": "^1.0",
        "doctrine/doctrine-bundle": "^2.7",
        "doctrine/doctrine-migrations-bundle": "^3.2",
        "doctrine/orm": "^2.13",
        "easycorp/easyadmin-bundle": "^4.4",
        "friendsofsymfony/ckeditor-bundle": "^2.4",
        "knplabs/knp-paginator-bundle": "^5.9",
        "knpuniversity/oauth2-client-bundle": "^2.10",
        "league/oauth2-google": "^4.0",
        "phpdocumentor/reflection-docblock": "^5.3",
        "phpstan/phpdoc-parser": "^1.8",
        "sensio/framework-extra-bundle": "^6.1",
        "symfony/asset": "6.1.*",
        "symfony/console": "6.1.*",
        "symfony/dotenv": "6.1.*",
        "symfony/expression-language": "6.1.*",
        "symfony/flex": "^2",
        "symfony/form": "6.1.*",
        "symfony/framework-bundle": "6.1.*",
        "symfony/http-client": "6.1.*",
        "symfony/intl": "6.1.*",
        "symfony/mailer": "6.1.*",
        "symfony/mime": "6.1.*",
        "symfony/monolog-bundle": "^3.0",
        "symfony/notifier": "6.1.*",
        "symfony/password-hasher": "6.1.*",
        "symfony/process": "6.1.*",
        "symfony/property-access": "6.1.*",
        "symfony/property-info": "6.1.*",
        "symfony/proxy-manager-bridge": "6.1.*",
        "symfony/runtime": "6.1.*",
        "symfony/security-bundle": "6.1.*",
        "symfony/security-csrf": "6.1.*",
        "symfony/serializer": "6.1.*",
        "symfony/string": "6.1.*",
        "symfony/translation": "6.1.*",
        "symfony/twig-bundle": "6.1.*",
        "symfony/validator": "6.1.*",
        "symfony/web-link": "6.1.*",
        "symfony/webpack-encore-bundle": "^1.15",
        "symfony/yaml": "6.1.*",
        "twig/cssinliner-extra": "^3.4",
        "twig/extra-bundle": "^3.4",
        "twig/inky-extra": "^3.4",
        "twig/intl-extra": "^3.4",
        "twig/markdown-extra": "^3.4",
        "twig/twig": "^2.12|^3.0",
        "vich/uploader-bundle": "^1.21"
    },
    "config": {
        "allow-plugins": {
            "composer/package-versions-deprecated": true,
            "symfony/flex": true,
            "symfony/runtime": true
        },
        "optimize-autoloader": true,
        "preferred-install": {
            "*": "dist"
        },
        "sort-packages": true
    },
    "autoload": {
        "psr-4": {
            "App\\": "src/"
        }
    },
    "autoload-dev": {
        "psr-4": {
            "App\\Tests\\": "tests/"
        }
    },
    "replace": {
        "symfony/polyfill-ctype": "*",
        "symfony/polyfill-iconv": "*",
        "symfony/polyfill-php72": "*",
        "symfony/polyfill-php73": "*",
        "symfony/polyfill-php74": "*",
        "symfony/polyfill-php80": "*",
        "symfony/polyfill-php81": "*"
    },
    "scripts": {
        "auto-scripts": {
            "cache:clear": "symfony-cmd",
            "assets:install %PUBLIC_DIR%": "symfony-cmd",
            "ckeditor:install": "symfony-cmd"
        },
        "post-install-cmd": [
            "@auto-scripts"
        ],
        "post-update-cmd": [
            "@auto-scripts"
        ]
    },
    "conflict": {
        "symfony/symfony": "*"
    },
    "extra": {
        "symfony": {
            "allow-contrib": false,
            "require": "6.1.*"
        }
    },
    "require-dev": {
        "phpunit/phpunit": "^9.5",
        "symfony/browser-kit": "6.1.*",
        "symfony/css-selector": "6.1.*",
        "symfony/debug-bundle": "6.1.*",
        "symfony/maker-bundle": "^1.0",
        "symfony/phpunit-bridge": "^6.1",
        "symfony/stopwatch": "6.1.*",
        "symfony/web-profiler-bundle": "6.1.*"
    }
}

package.json

{
    "devDependencies": {
        "@babel/core": "^7.17.0",
        "@babel/preset-env": "^7.16.0",
        "@hotwired/stimulus": "^3.0.0",
        "@popperjs/core": "^2.11.6",
        "@symfony/stimulus-bridge": "^3.2.0",
        "autoprefixer": "^10.4.12",
        "core-js": "^3.23.0",
        "file-loader": "^6.2.0",
        "jquery": "^3.6.1",
        "postcss-loader": "^7.0.1",
        "regenerator-runtime": "^0.13.9",
        "sass": "^1.55.0",
        "sass-loader": "^13.0.2",
        "webpack": "^5.74.0",
        "webpack-cli": "^4.10.0",
        "webpack-notifier": "^1.15.0"
    },
    "license": "UNLICENSED",
    "private": true,
    "scripts": {
        "dev-server": "encore dev-server",
        "dev": "encore dev",
        "watch": "encore dev --watch",
        "build": "encore production --progress"
    },
    "browserslist": [
        "defaults"
    ],
    "dependencies": {
        "tailwindcss": "^3.1.8",
        "tw-elements": "^1.0.0-alpha12"
    }
}

Merci d'avance pour votre aide car là je n'arrive pas à trouver d'où vient le problème ... et ce n'est pas faute de recherche mais je n'ai rien trouvé de semblable :-(

Merci

3 réponses


Bonjour
As tu reglé ton problème ?
Je me suis fais un memo sur github sur l'installation de ce bundle. Je vois une différence au niveau de la config du fos_ckeditor.yaml.
Je mets en lien le readme que j'ai rédigé :
https://github.com/LaTituzine/Utiliser-le-bundle-FOSCKEditor-avec-Symfony-6
J'utilise webpack mais je pense qu'il te manque quand même la config base_path et js_path

fos_ck_editor:
    #...
    base_path: "build/ckeditor"
    js_path: "build/ckeditor/ckeditor.js"
    configs:
        my_config:
            toolbar: full #peut-être full, standard ou basic
            language: fr
            extraPlugins: 'justify' #optionnel

Bonjour,

Merci Luckyluchie, Merci deja pour votre reponse.
Non je n'ai pas résolu le problème, et je viens de modifié en suivant le memo sur Github .. et toujours idem ...

Je ne comprends vraiment pas d'où vient le problème ...

Bonjour, je me permets de relancer le sujet !
config -> (config php 8.1, "friendsofsymfony/ckeditor-bundle": "^2.4", Symfony -> 6.2)

Je cherche toujours la solution ....

sur un de mes projets j'avais déjà installé CKeditor et aucun souci .... sauf qu'en vérifiant .... bien idem, l'éditeur s'est volatilisé lui aussi !
Je finis par me dire que je ne dois pas être la seule !
config de l'autre projet -> (php 8.1, "friendsofsymfony/ckeditor-bundle": "^2.4", Symfony 6.1)

Merci d'avance :-)