Column Type "Row"

Sorry if this is already out there as a request - I searched the community though and couldn’t find explicit mention of it.

I am trying to use Coda for Product/Team management, and really missing the ability to relate any row in a doc to any other. It’s been a limitation for me to have to fall back on lookups between tables, meaning that I can’t easily relate a row to any other if I have say 10+ tables, and I intend many more in fact in the Team Mgmt doc I am trying to create, unless I have 10+ lookups to account for each table.

It occurred to me that if there was a Column Type that could draw from an entire doc, this would really help out with this issue. What’s more, being able to name the column, a major feature of Coda, would give some super functionality of having the ability to define what the relation is. The best implementation of this I’ve seen in another app is in Jira where you can not only link any “issue” (equivalent of a row in Coda) to another, you can define the name of the relation, such as things like:

“Discovered during”

“Duplicates”

“Follows”

“Is Caused by”

Since Coda already lets you name the Column any way you want, we’d already have the ability to configure the name of the relation built in!

This is how Jira lets you control the names of the links on both sides, I think being able to do this would also be very useful in Coda:

You can see that “outward” and “inward” descriptions can be edited, giving great context depending on which of the rows you are viewing

What’s more, if you could both create a row (you’d need the ability to also pick which table it goes into, but I’d hope that wouldn’t be too difficult), as well as have the ability to reference multiple rows, this would be a hugely flexible tool.

It’s also closely related to two other features I sorely miss that I’d love to hear back from the Coda team about plans on:

Thanks guys for listening! Hope this is clear, and would love to hear thoughts both from the Coda community, and Coda team about the viability of this and when we could possibly see it implemented. Or, fingers crossed, news that’s it’s already in the works!

1 Like

Hi again.

This is probably novice-level follow-on commentary, but it occurred to me that this solution would potentially require the destination row’s table to have an equivalent “linked row” column. That may be awkward, as I guess that would force create these columns across every table who’s row was mentioned, and that could be a lot since I’m proposing that this column be able to reference each and every other row in Coda.

What is probably the logical way to handle this in the destination row, which may have been implied in my suggestion in the first place, is to simply add some kind of “mention” area where you’d have a text such as “caused by” and then the link to the “mentioning” row.

So in reality I am in effect talking yet again about

and this is just another potential implementation in Coda!

Whatever directly you guys decide to go with this, I’d really like to see it soon. I continue to miss this basic functionality of nocode/data apps it the more I work forward in Coda!

1 Like

There is a way to reference arbitrary rows in a column, and we can even generate automatic back-references… with some limitations. (This post is from 6 months ago, but perhaps someone will find this useful.)

The “Row from any table” column is actually just text and, as you can see, the references are simply @references like you might put on the canvas or in formulae. The thing is, the back references are collected via RegExMatch() which means that text references without the @ symbol work. (which is probably not ideal, since row names might change, but if you consistently use “@”, then that solves that.

The other limitation here is that regex matches on display name, which may not be a unique ID. So for example, Canada has a reference to John Doe, but there are two John Doe’s in the people table and they both selfishly believe that Canada is talking about them.

The formula for back references is kinda confusing to write (and gets long if you need to check many tables) but the good thing is that it’s easy to simply copy-paste.

But honestly, even though this is possible to do with Coda, I really think that 99% of the time, if you already know what kind of relation you want a column to be (“Discovered during”, “Follows”, etc) then you already know what type of row will go there and you can link to to just that table. If you want more than one type, more than one column is probably best.

If you still feel that there may be more than one row type you want to reference in a given single column, then perhaps those multiple row types should be merged into one table, with a drop-down for distinguishing their type.

I appreciate the commentary @Ryan_Martens. This continues to be too complicated for my capabilities, as I’m not a developer. I remain hopeful, as I’ve posted around the community, that we can simply get the capability of picking up in another row that is @-mentioned the @-mentioning row’s reference.

So if I am in Row 1, and I @mention Row 2, Row 2 will have a link with some sort of text like “mentioned in Row 1.”

Thanks again!

@Ryan_Martens, I really want to see this, but is it showing as shared on google drive, and for the life of me I can’t get at it! The formulas are what I am after, I am trying to solve a similar problem.

Oh, very sorry about that @Andrew_Milne. Thank you for pointing that out. You should be able to take a look at the formulae now :slight_smile:

1 Like

Could you make edit access available for everyone so we can all see the formulas?

Hey @Connor_McCormick, I just added a [Copy Doc] button so you can edit a copy of your own.

Also, for anyone who is interested in exploring the limits of Coda’s @references and back-references, in this same document I started making a note-taking app inspired by Roam Research.

Explore!

Very cool! By the way, if you want to see a cool alternative to Roam, check out Obsidian it’s free and beautiful (and all your data is stored on your own computer)

Thanks :slight_smile:

This thread is quickly getting derailed, but I do also appreciate Obsidian. But I know that if I were to switch to Obsidian, I would miss the outliner feel and functionality. Actually another alternative I really like is Remnote, which is very similar to Roam, even more powerful in a few ways… but it’s UX needs some work.

1 Like

anyone reading this after the fact

Please click through to :point_down:
(2021-04-01)