Планирам да разработя уеб приложение в CakePHP, което показва информация в графики и карти. Избрах CakePHP, защото информацията, която трябва да покажем, е много структурирана, така че моделният подход улеснява управлението на данни; също така имам известен опит с MVC от ASP.NET и ми харесва колко лесно е да се използва маршрутизирането.
И така, проблемът ми е, че множеството организации, които биха могли да използват приложението, ще имат своя собствена база данни с различна схема от тази, от която се нуждаем. Не мога просто да задам връзката им с низ във файла app.php, защото тяхната база данни няма да съответства на моя модел.
И източникът на данни на организацията не може да пасне на моя модел по много причини: таблиците нямат едно и също име, схемата е различна, полетата на моя обект са в отделни таблици, може би имат информация в различни бази данни или също и в различни СУБД!
Искам да знам дали има начин да се направи интерфейс, който постига това
По такъв начин, че cakephp Model/Entity може да използва данни независимо от източника. Имате ли предложения как да стане това? CakePHP има ли опция да направи това възможно? Трябва ли да използвам PHP с някакъв език за маркиране като JSON или XML? Може би MySQL има помощна програма за трансформиране на данни от различни източници в изглед и мога да накарам CakePHP да използва изгледа вместо таблицата? В случай, че имате отговор, бъдете възможно най-подробен.
Тези други опции са възможни, ако е невъзможно да се направи интерфейсът: - Usw друга рамка, която може да се справи с това по-лесно и има функциите, които споменах по-горе. - Накарайте организацията да промени своята база данни, така че да съответства на моя модел (този не ми харесва и вероятно няма да го направят). - Прехвърляне на данните в собствената база данни на приложението.
Допълнителна информация: Данните, показани в графиките, са от студенти в университета. Всеки университет има своя собствена база данни със собствена структура и приложения, използващи db, ето защо не е толкова лесно да се промени структурата. Просто искам да направя възможно най-лесно всяко училище да конфигурира своя собствена база данни.
РЕДАКТИРАНЕ: Версията е CakePHP 3.2. Важно уточнение е, че не се нуждае от всички CRUD операции, а само от „четене“. Надяваме се, че това прави решението по-лесно.