0

I have a History of Art database with 30 tables and complex relationships between people (the sitters, artists, etc) and the works (paintings, sculpture, etc). Currently this is implemented in MS Access with about 5k lines of VBA code and 30 odd forms. I have to make the choice to either use a PHP framework or to use a CMS. I have PHP coding skills but not much time, so can't really afford to spend a long time evaluating the CMS products to see whether they can be adapted to use a different data model.

My question is whether the popular open source CMS products such as Joomla or Drupal allow use of a custom data model, or do they expect you to use their built-in model (articles, blogs, comments, etc.)?

James Piggot
  • 417
  • 2
  • 7

4 Answers4

2

Using a CMS would be inappropriate - whilst many of them do support custom properties they don't usually implement them as fields in a relational database (thus making it hard, if not possible, to sort or index by).

I suggest you recreate your MS Access database in MySQL and then use a Scaffolding framework (Ruby-on-Rails has a very celebrated scaffold) to automatically generate code and GUI for you, then you just tinker it as needed.

Dai
  • 141,631
  • 28
  • 261
  • 374
  • Thanks David, having used WordPress (which is a great product for producing content driven websites that conform to their data model) I suspected the other CMS would have similar limitations with implementing a different data model. I have ported the database to MySQL and that works fine. – James Piggot Aug 16 '12 at 08:03
2

I don't recommend using a CMS. You don't have enough flexibility.

I recommend using a PHP framework, for example Symfony. You just recreate the data model in MySQL then use use symfony to scaffold and then simply style the site.

hugohabel
  • 724
  • 6
  • 17
0

I've a similar database model about animals, location and finds and I've successfully used TYPO3 and an adjaceny list model with many mysql self joints. I can recommend TYPO3 but I think any other CMS can do the same with the arts database but it's important to know that mysql doesn't support recursive queries that's why I needed self joints to implement the relational data model.

Micromega
  • 12,486
  • 7
  • 35
  • 72
0

Bolt is pretty flexible when it comes to your data models, or "contenttypes". You can define or modify them, and the CMS will update the tables in the database for you. Site: http://bolt.cm

Bopp
  • 664
  • 3
  • 5