virtual classes

An article by Gaspard Bucher

data model

  1. relations
  2. virtual classes
  3. versions
  4. content tables
  5. dynamic attributes

Rewrite needed with property and roles

introduction

With Virtual Classes you can create your own kind of objects. For example, if you are a musician, you might want to create an “Album” object. If you are an architect you might want to create “Houses” and so on. Virtual classes behave like real classes: you can search for them, display them in fancy ways and create custom relations to other objects.

attributes

You can add attributes to virtual classes by defining new “columns” with a type. You can also group these “columns” into roles so that you can detect if an instance of the virtual class has any of the role’s attributes by testing “has_role?”.

virtual classes in zafu

Display a list of all the houses in the current section:

<r:houses from='section' do='each' join=', ' do='link'/>