# Dynamic models

**URL:** <https://www.ruby-forum.com/t/dynamic-models/91603>\
**Category:** Rails\
**Created:** [April 10, 2007, 8:14pm UTC](https://www.ruby-forum.com/t/dynamic-models/91603 "2007-04-10T20:14:55Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![linoj](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/l/e36b37/32.png) [@linoj](https://www.ruby-forum.com/u/linoj)\
**Post date:** [April 10, 2007, 8:14pm UTC](https://www.ruby-forum.com/t/dynamic-models/91603/1 "2007-04-10T20:14:55Z")

</div>

Anyone know of a plugin that lets you create dynamic models? eg an app  
with multiple projects and each project manager can add their own  
fields to the project profile

---

<div class="post-metadata">

**Author:** ![linoj](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/l/e36b37/32.png) [@linoj](https://www.ruby-forum.com/u/linoj)\
**Post date:** [April 10, 2007, 8:35pm UTC](https://www.ruby-forum.com/t/dynamic-models/91603/2 "2007-04-10T20:35:57Z")

</div>

Having made a hideous extension for ActiveRecord called  
DynamicActiveRecord for project a while back, I can say with  
confidence that you are better off creating a system with seperate  
models: Project, Field, Option etc.

This creates a far more manageable application and will help you to  
avoid any 12 hour straight core application re-writes when the  
client’s system collapses under the weight of all that magic…

Having said that, perhaps some more intelligent developers have  
achieved this in a nice way. However, I would still argue that simple  
and neat is the best way to go.

Steve

---

<div class="post-metadata">

**Author:** ![linoj](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/l/e36b37/32.png) [@linoj](https://www.ruby-forum.com/u/linoj)\
**Post date:** [April 11, 2007, 6:16pm UTC](https://www.ruby-forum.com/t/dynamic-models/91603/3 "2007-04-11T18:16:20Z")

</div>

I can see how a “DynamicActiveRecord” extension could get hairy and  
overcomplicated. I’d be happy with just some kind of plugin to manage  
a separate dynamic model like you indicated that lets me extend a AR  
model with a handful of extra fields.
