+ # The attr can have its table unspecified if it happens to be for the current "model_class" (the first case)
+ # or it can be fully specified with the database tablename (the second case) (e.g. "collections.name").
+ # NB that the security check for the second case table_name will not work if the model
+ # has used set_table_name to use an alternate table name from the Rails standard.
+ # I could not find a perfect way to handle this well, but ActiveRecord::Base.send(:descendants)
+ # would be a place to start if this ever becomes necessary.