We are using QField for field data collection (forest survey). Our data is stored in a PostGIS/PostgreSQL database and we use QFieldSync to export and import data. This works fine as long, as we use data, that is stored in a single table. During normalization of our database, we had to split up the original survey table into tree tables, one main table containing the static data of the site (including the geometry) and two detail tables (survey and planned actions) that are linked by an 1:many relation to the main table. In QGIS we can use the Data-driven Input Mask-plugin to work with the 3 tables. This seems to work quite well (after our first tests). But we don't know how to archive this in QField?
On way would be to go back to our original flat all-in-one table just for field survey and import the new data later to the 3 tables in the database. Another way would be to create a huge view from the 3 tables and work with the view in the field. The view could then be imported to update the underlying tables (would need to create Trigger in order to make the view updatable).
But may be there is another more elegant and reliable path to follow, since it should be a common problem.