Gruber
Member
Hello there!
I'm developing a simple project (I think) for a book archive/catalogue.
The keeper will provide me a .CSV file with the data for every book record, and they can make a new one too based on some specifics request from me (column with specific data formatted in particular way etc..)
I've been asked to make a list with all the books available, another with the authors of the books, and another with the books genres. The title list will show records that directly link to the detail view of the book. Also each book should display a link for its author and genres page result as explained below.
The authors list will show each author as a link. Each author link will lead to a page where all the books of that author are listed. Same logic applies to the genres list.
They also asked me to be able to add and update the archive with new books etc.
I think this is pretty standard and easy to achieve but I'm not sure how to do this.
I've been able to sucessfully create a list with some dummy data for the simple titles list, detail view and so on, and setup correctly a user to add/update this single table records too.
Trying to stick with a single table (since I was more or less able to manage it), I thought that maybe using a tagify element could be a viable quick and dirty solution: I found tho that while in the genres case it's a sort of acceptable workaround to use along with an "adapted" tag cloud module (still it looks rather hacky to me), I saw that in the authors case it's not fitting.
Unfortunately I'm more confident with front end development. I can get my hand dirty on the back end with some PHP and some straight DB queries, but the whole organization of a database, tables relations and so on is a bit off my actual knowledge
What is particularly tricky for me to grasp is how to "bind" a book record to an author/genre in Fabrik and how to allow a user to insert a new record with this "binds" in action.
I know the basics on how usually a DB handle this (foreign keys, one/many to many relations and so on). I saw some examples in your documentation about joins elements or the example video in home, but many times the join is based on a prebuild list of things while in my case obviously is not.
I've tried using the databasejoin element with auto-complete field but I can't wrap my head around it: in my case the user should be able to create a new author/genre entries or connect to one already existing in the records. Am I missing something obvious?
So the questions are: how it's (supposedly) the best and simplest way to do this? Is it possible to create a record and bind it to a record in another table without prebuilding it?
I tried to explain myself best I can (english is not my first language), if something is not clear please tell me!
Thank you for any help or assistance!
I'm developing a simple project (I think) for a book archive/catalogue.
The keeper will provide me a .CSV file with the data for every book record, and they can make a new one too based on some specifics request from me (column with specific data formatted in particular way etc..)
I've been asked to make a list with all the books available, another with the authors of the books, and another with the books genres. The title list will show records that directly link to the detail view of the book. Also each book should display a link for its author and genres page result as explained below.
The authors list will show each author as a link. Each author link will lead to a page where all the books of that author are listed. Same logic applies to the genres list.
They also asked me to be able to add and update the archive with new books etc.
I think this is pretty standard and easy to achieve but I'm not sure how to do this.
I've been able to sucessfully create a list with some dummy data for the simple titles list, detail view and so on, and setup correctly a user to add/update this single table records too.
Trying to stick with a single table (since I was more or less able to manage it), I thought that maybe using a tagify element could be a viable quick and dirty solution: I found tho that while in the genres case it's a sort of acceptable workaround to use along with an "adapted" tag cloud module (still it looks rather hacky to me), I saw that in the authors case it's not fitting.
Unfortunately I'm more confident with front end development. I can get my hand dirty on the back end with some PHP and some straight DB queries, but the whole organization of a database, tables relations and so on is a bit off my actual knowledge
What is particularly tricky for me to grasp is how to "bind" a book record to an author/genre in Fabrik and how to allow a user to insert a new record with this "binds" in action.
I know the basics on how usually a DB handle this (foreign keys, one/many to many relations and so on). I saw some examples in your documentation about joins elements or the example video in home, but many times the join is based on a prebuild list of things while in my case obviously is not.
I've tried using the databasejoin element with auto-complete field but I can't wrap my head around it: in my case the user should be able to create a new author/genre entries or connect to one already existing in the records. Am I missing something obvious?
So the questions are: how it's (supposedly) the best and simplest way to do this? Is it possible to create a record and bind it to a record in another table without prebuilding it?
I tried to explain myself best I can (english is not my first language), if something is not clear please tell me!
Thank you for any help or assistance!