Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Propose graphql interface #3

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

WithoutPants
Copy link

Proposed initial graphql interface for metadata API.

id: ID!
user: User!
"""ID of the object to edit - null if creating a new object"""
target_id: ID!
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If supporting MERGE we need either an array of target_id or a merge_from_id.

name: String
disambiguation: String
added_aliases: [String!]
removed_aliases: [String!]
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would argue that alias shouldn't be a fixed property on the performer, but rather a property of scene performances. So say a performer has the official name 'Mindy', but performed in a scene under the name 'Sugary M', then 'Sugary M' would be an alias attached to that performance, and would show up in the list of aliases for the performer 'Mindy'. There would be no need to add aliases since they would show up based on performance history. Of course, that would mean it wouldn't be possible to manually add an alias without a performance under that name, but I can't really think of a reason why you would want to do that.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Adding a relationship between scene and alias is absolutely a good idea. I still like the idea of aliases for a performer however because there is bound to be cases where we add a performer before an exhaustive list of scenes can be populated. It would be useful to know a performer's aliases before the applicable scenes have been added. I'm thinking we could keep the alias list in the performer table, and just automatically add to the list when a performance with an alias is added.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure, the only issue is that if someone assigns a scene to the wrong performer with an erroneous alias, and that gets fixed later, the erroneous alias would still persist on the performer. It might be useful to separate explicit aliases that have been set on the performer from scene credit aliases which are added implicitly, and just merge them together for the graphql query. That would also mean you could weight the aliases based on how many scenes it has been used in.

@ghost
Copy link

ghost commented Nov 6, 2019

Another thing worth adding is entity subscriptions. That way users can quickly see open edits to performers/studios they subscribe to.

@WithoutPants WithoutPants force-pushed the proposed_graphql_interface branch from c40a8da to c6d4808 Compare November 15, 2019 00:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant