this post was submitted on 21 Jun 2023
3 points (100.0% liked)

ObsidianMD

4105 readers
1 users here now

Unofficial Lemmy community for https://obsidian.md/

founded 1 year ago
MODERATORS
 

Hi! I've created a Book collection and, with Dataview, I've created also a table with a link to a folder containing one file for each author (where I can find all the book I have read or want to read belonging to this author). So I have a folder with the books and a folder with the authors. How can I create a table (or something similar, maybe a Kanban Board?) where I can see, for each author, the book in my folder. Hope to have explained clearly what I have in mind: sorry, English is not my mother-language as you can easily guess Thanks in advance for any help

you are viewing a single comment's thread
view the rest of the comments
[–] dakerDraws@pawb.social 2 points 1 year ago* (last edited 1 year ago) (1 children)

Just to make sure I understand, you want your Author notes to have a Dataview table containing all the books they've written?

For each Book note, do you have a field (either in YAML or inline Dataview) pointing to the Author note? What I personally do is have an inline field that links to the Author note:

Author:: [[Stephen King]]

Then in the Author note I'll have this:

table without id link(file.link,title) AS Book, Year FROM "BOOK FOLDER" WHERE contains(Author, this.file.link)

Replace BOOK FOLDER with wherever your books are. Then you can paste this into all your Author notes. Even better, make an Author template so you don't have to type it each time you make an Author note.

[–] ilbradipo@feddit.it 0 points 1 year ago (1 children)

Thanks a lot for your promt reply. Obviously I was not so clear in explaining what I'm looking for, sorry. I already have an "author folder" with the same output you indicate (one note for each author. I have also an "Author Gallery" with a list of all the authors with this dataview code: TABLE genre as Genere FROM "autori" SORT file.name I wish to have, instead of genre a list of all "my" books from this author. Could this be possible?

[–] dakerDraws@pawb.social 0 points 1 year ago (1 children)

Do you want to do something like this?

table without ID file.link AS "Author",
filter(file.inlinks,(x)=>contains(x.Author,file.link) & contains(x.file.path,"Book Folder")) AS "Books"
from "Author Folder"
sort file.name

The only thing you would need to change in this code is the Book Folder and Author Folder.

But if you would like it to be a more visually appealing gallery, there may be some community plug ins you'll have to try.

[–] ilbradipo@feddit.it 0 points 1 year ago (1 children)

Thank a lot! Exactly what I'm looking for! Where can I learn about the "query language" you've used? Can you point me also to the plugins I can try? Thanks in advance!

[–] biscotty666@lemmy.world 1 points 1 year ago

Here's the documentation https://blacksmithgu.github.io/obsidian-dataview/.

I also want to suggest that you consider not basing queries on folders but using tags instead. Simply putting #author in the notes would mark it as an author note allowing you to simplify your query and make it work no matter where the file is located. Obsidian doesn't really care about folders although we do always use them. So I don't think it's good practice to base queries on them. Just my 2 cents.