របៀបប្រើ SonataAdminBundle នៅក្នុង Symfony3 (ភាគទី១)

SonataAdminBundle គឺធ្វើការទៅលើផ្នែកនៃ Admin ហើយវាបានចែកចេញជា ៥ bundles៖ ទី១ SonataAdminBundle ផ្ទុកនូវ core libraries ហើយនិង services។ ទី២ SonataDoctrineORMAdminBundle រួមបញ្ចូល Doctrine ORM project ជាមួយនឹង core admin bundle។ ទី៣ SonataDoctrineMongoDBAdminBundle រួមបញ្ចូល MongoDB ជាមួយ core admin bundle។ ទី៤ SonataDoctrinePhpcrAdminBundle បញ្ចូល PHPCR ជាមួយ core admin bundle។ ទី៥ SonataPropelAdminBundle បញ្ចូល Propel ជាមួយ core admin bundle

១ ការតម្លើង

ការតម្លើងមាន៦ជំហាន

ជំហានទី១ ធ្វើការដោនឡូដ Bundle

sonata1

ជំហានទី២ បើក Bundle ។ សូមធ្វើការសរសេរកូដដូចខាងក្រោមក្នុង app/AppKernel.php file៖

sonata2

ជំហានទី៣ គឺ Configure Bundle ៖ ពេលនេះ bundles ទាំងអស់ត្រូវបានដោនឡូដនិងធ្វើការចុះឈ្មោះរួចរាល់អស់ហើយ បន្ទាប់មកទៀតយើងត្រូវបន្ថែមនូវ configure មួយចំនួនទៀត។ Admin interface គឺកំពុងប្រើ SonataBlockBundle ដើម្បីដាក់អ្វីៗទាំងអស់ទៅក្នុង blocks ។ អ្នកគ្រាន់តែប្រាប់ទៅ block bundle អំពីអ្វីដែលមាននៃ admin block តាមរបៀបខាងក្រោម៖

sonata3

ជំហានទី៤ ធ្វើការបញ្ចូល Routing Configuration។ Bundles ទាំងអស់បានចុះឈ្មោះនិង configure បានត្រឹមត្រូវហើយ ដូចនេះដើម្បីប្រើវាបាន Symfony router ត្រូវការដឹងអំពី routes ដែលផ្ដល់ដោយ SonataAdminBundle ។ អ្នកអាចធ្វើបែបនេះបានដោយបញ្ចូលពួកវានៅក្នុង routing configuration៖

sonata4

ជំហានទី៥ បើក translator service ។ Translator service គឺតម្រូវអោយមានព្រោះ SonataAdmin ត្រូវការបង្ហាញ labels ទាំងអស់អោយបានត្រឹមត្រូវ។

sonata5

ជំហានទី៦ រៀបចំ Environment ។ ជាមួយនឹង bundles ទាំងអស់ដែលអ្នកបានតម្លើង នេះគឺជាការអនុវត្តន៏ដ៏ល្អមួយដើម្បីសម្អាតនូវ cache ហើយតម្លើង assets ៖

sonata6

ពេលនេះអ្នកបានបញ្ចប់នូវការតម្លើងរួចរាល់ហើយ ដូច្នេះអ្នកអាចឆែកមើលបានហើយអំពី interface ។ ប្រសិនបើអ្នកបានភ្ជាប់នូវ server នោះអ្នកអាចចូលមើលបានតាមរយៈ http://localhost:8000/admin

getting_started_empty_dashboard

ដូចដែលអ្នកបានឃើញហើយថា Admin panel គឺទទេរ។ នេះក៏ព្រោះតែគ្មាន bundle ណាមួយបានផ្ដល់នូវ admin functionality ទៅអោយ admin bundle នៅឡើយទេ។