FRQ: Database Inheritance

Hi,

For certain types of databases (i.e. Tasks, People, Organisations, Tools) I would like to have the ability to inherit/extend databases.

For example:

  1. I want a base database called Person which has a few basic fields: given name, surname, email, phone, etc.
  2. I’ll have database called Staff that extends Person, which in addition has fields like: join date, role, salary, etc.
  3. I’ll have a database called Contact that extends Person, which adds fields like: company, meetings, etc.
  4. I’ll have a database called Recruit that extends Person, which adds fields like: source, CV, website, etc.

Currently we have to choose between:
2. One massive database with lots of irrelevant fields, which also confuses

  1. Multiple databases with same fields, which requires us to convert entities at times and/or duplicate results, which confuses folks
  2. Multiple extension databases: One Person database and then Person-Staff, Person-Contact, etc. that maybe automatically connects some entries.

As you can imagine, none of these approaches are ideal for users as they are confusing and certain fields do not map, etc.

I love that I can have multipole entity types on a board (we use this for our task kanban), but of course I’d rather have a board that just lists all tasks irrespective if they are dev tasks, business tasks or support tasks (tickets)…

Thanks! :slightly_smiling_face:

Hi!
Maybe I didn’t fully get the case, but

  1. I have fields on the Person database
  2. On Staff database I have new fields & lookup data from Person

What am I missing? :eyes:

Hi @Polina_Zenevich!

Interesting, for some reason I didn’t think of it that way, and might actually solve this, if a few gaps are closed:

  1. The lookup does not allow me to fill data. So any view only shows the lookup
  2. Forms do not allow me to set the lookups either
  3. Bonus: If I then can hide the Person database (as outlined here)

That’s at least based on a first quick test, but I overall like the approach and might see if I rewire a number of things based on your suggestion. :pray:

This is the shortcoming of Lookups: they are read-only, and it is not necessarily easy to see how to open the Lookup’s source entity where the value can be edited.

Related:

2 Likes

I still think the Lookup-based approach is potentially non-ideal and quite limited (even if editing in looked-up entity is added) vs. some kind of “inheritance” system or at least Individual Layouts for a node, hide fields etc and/or Tab Views in Entity Pages. The newer ability to Hide and Collapse Fields and Relations is helpful to deal with field proliferation but doesn’t address the need for different views of same/related data based on context.

5 Likes

Yes, we need this too.

That’s our current set-up for contact. Which is really confusing. We have really huge databases (example: our contact database) with a lot of hidden fields (which we only use in automations/formulas). But if a user wants to create a form or want to add a value in a table, they will see all fields. The list is quite insane :sweat_smile:

This is our setup in a lot of other databases. Also quite confusing since we need a lot of workarounds to create the overall database/views.

And it’s really limiting the table views since you can only choose 1 database in a table. So I can’t say “Column 1-3 are Database A and column 4-6 are Database B”

Exactly, this is also why we can’t use lookups.

And automations/buttons + formulas also not.

4 Likes