ស្វែងយល់អំពី Events និង Event Listeners ក្នុង Symfony3
កំឡុងពេលដែលដំណើរការនូវ Symfony application, ព្រឹត្តិការណ៏ជាច្រើនបានកើតឡើង។ Application របស់អ្នកអាចដឹងអំពីព្រឹត្តិការណ៏ទាំងអស់នោះបាននិងធ្វើការទទួលខុសត្រូវលើពួកគេដោយដំណើរការនូវកូដផ្សេងទៀត។
កំឡុងពេលដែលដំណើរការនូវ Symfony application, ព្រឹត្តិការណ៏ជាច្រើនបានកើតឡើង។ Application របស់អ្នកអាចដឹងអំពីព្រឹត្តិការណ៏ទាំងអស់នោះបាននិងធ្វើការទទួលខុសត្រូវលើពួកគេដោយដំណើរការនូវកូដផ្សេងទៀត។
Validation ជាកិច្ចការមួយដែលតែងតែមាននៅក្នុង web applications ។ ទិន្នន័យដែលបានបញ្ចូលរួចនៅក្នុង form ត្រូវតែធ្វើការ validated រឺផ្ទៀងផ្ទាត់។ ទិន្នន័យចាំបាច់ត្រូវធ្វើការ validate មុននឹងវាត្រូវបានបញ្ចូលទៅក្នុង database រឺក៏ឆ្លងកាត់ទៅ web service ។
ដូចដែលបានសន្យារួចមកហើយកាលពីភាគទី៣ ថាយើងខ្ញុំនឹងពន្យល់លោកអ្នកអំពី List View ដែលមានក្នុង SonataAdminBundle នៃ Symfony 3 ។ ក្រៅពីនេះ អ្នកក៏បានបង្កើតនូវ Admin interface មួយដែលអាចអោយអ្នកប្រើប្រាស់ អាចធ្វើការ បង្កើត និង កែប្រែ នូវ blog posts និង categories របស់គេ ប៉ុន្តែទាំងនេះគឺវាមិនច្រើនទេក្នុងការកែប្រែប្រសិនបើ admin មិនមាន list នៃ blog posts។
បន្ទាប់ពីបង្កើត Admin រួចរាល់ហើយ ពេលនេះអ្នកត្រូវធ្វើការទៅលើ Form View ម្ដង ហើយនៅក្នុង Form View ក៏បែងចែកជាច្រើនដំណាក់កាលដូចទៅនឹង Admin ផងដែរ។ ដូចនេះដើម្បីអោយកាន់តែយល់ច្បាស់ សូមតាមដានទាំងអស់គ្នា៖
កាលពីភាគទី១ លោកអ្នកបានយល់និងដឹងអំពីវិធីតម្លើង និងការប្រើប្រាស់នូវ SonataAdminBundle រួចមកហើយ ដូចនេះយើងខ្ញុំនឹងនាំលោកអ្នកមកស្វែងយល់អំពីការបង្កើត Admin វិញម្ដងថាតើ មុននឹងបានចេញជារូបរាង Admin តើត្រូវមានដំណាក់កាលអ្វីខ្លះ ហើយវាមានដំណើរការដូចម្ដេចខ្លះ? ដូចនេះសូមចាប់ផ្ដើមទាំងអស់គ្នា៖
SonataAdminBundle គឺធ្វើការទៅលើផ្នែកនៃ Admin ហើយវាបានចែកចេញជា ៥ bundles៖ ទី១ SonataAdminBundle ផ្ទុកនូវ core libraries ហើយនិង services។ ទី២ SonataDoctrineORMAdminBundle រួមបញ្ចូល Doctrine ORM project ជាមួយនឹង core admin bundle។ ទី៣ SonataDoctrineMongoDBAdminBundle រួមបញ្ចូល MongoDB ជាមួយ core admin bundle។ ទី៤ SonataDoctrinePhpcrAdminBundle បញ្ចូល PHPCR ជាមួយ core […]
MongoDB Object Document Mapper (ODM) គឺដូចទៅនឹង Doctrine2 ORM ដូចជា ដំណើរការការងារនិងទស្សនវិស័យរបស់វាផងដែរ។ Bundle គឺទំនេរដែលអាចរួមបញ្ចូលនូវ Doctrine MongoDB ODM ទៅកាន់ Symfony ដើម្បីអោយវាមានភាពងាយស្រួលក្នុងការ configure និងប្រើប្រាស់។
Doctrine project ជាកន្លែងដែលប្រមូលផ្ដុំនូវសំណុំនៃ PHP libraries ដែលសំដៅទៅលើការផ្ដល់នូវ persistence services និង functionality ដែលពាក់ព័ន្ធ។ គុណតម្លៃរបស់វាគឺមានដូចជា Object Relational Mapper ហើយនិង Database Abstraction Layer ។ Object relation mapper (ORM) សម្រាប់ PHP ដែលស្ថិតនៅលំដាប់កំពូលនៃ database abstraction layer (DBAL)។
រាល់ព័ត៌មាននិងទិន្នន័យដែលបង្ហាញនៅលើ application គឺសុទ្ធតែមានការប្រាស្រ័យទាក់ទងទៅនឹង Database ។ Symfony Framework បានរួមបញ្ចូលនូវ library មួយផ្សេងទៀតដែលហៅថា Doctrine ខណៈពេលដែលវាមិនបានបង្កើតនូវ component ដើម្បីធ្វើការជាមួយនឹង database ។ គោលបំណងរបស់ Doctrine គឺមានតែមួយគត់គឺផ្ដល់អោយអ្នកនូវ tools ដ៏ពេញនិយមដើម្បីអោយទំនាក់ទំនងនៃ database កាន់តែមានភាពងាយស្រួលនិងមានភាពបត់បែន។
Symfony Security component ផ្ដល់នូវ framework ដែលមានសុវត្ថិភាពខ្ពស់និងអាចបត់បែនគ្រប់កាលៈទេសៈ ដែលអាចធ្វើការ load users ពី configuration, database, រឺក៏អ្វីផ្សេងទៀតដែលអ្នកនឹកស្រមៃចង់បាន។ FOSUserBundle បង្កើតឡើងដើម្បីរក្សាទុក users ក្នុង database អោយកាន់តែងាយស្រួលនិងរហ័ស។
Copyright © 2019 ដោយ TECHFREE | គ្រប់គ្រងដោយក្រុមហ៊ុន E-KHMER Technology Co., Ltd