Index: elixir/trunk/elixir/entity.py
===================================================================
--- elixir/trunk/elixir/entity.py (revision 94)
+++ elixir/trunk/elixir/entity.py (revision 96)
@@ -65,10 +65,10 @@
         # set default value for options
         self.order_by = None
-        self.tablename = None
         self.table_args = list()
         self.metadata = getattr(self.module, 'metadata', elixir.metadata)
 
         for option in ('inheritance', 
-                       'autoload', 'shortnames', 'auto_primarykey',
+                       'autoload', 'tablename', 'shortnames', 
+                       'auto_primarykey',
                        'version_id_col'):
             setattr(self, option, options_defaults[option])
@@ -93,4 +93,6 @@
                 tablename = "%s_%s" % (modulename, entity.__name__)
                 self.tablename = tablename.lower()
+        elif callable(self.tablename):
+            self.tablename = self.tablename(entity)
     
     def setup(self):
