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

Decide on a project slug before publication time #2200

Open
bemoody opened this issue Mar 5, 2024 · 1 comment
Open

Decide on a project slug before publication time #2200

bemoody opened this issue Mar 5, 2024 · 1 comment

Comments

@bemoody
Copy link
Collaborator

bemoody commented Mar 5, 2024

When a newly-created project is published, the editor is asked, at the very last possible moment, to choose a permanent public name (slug) for the project.

I dislike this and have wanted to fix it for a long time. For authors, the permanent URL shouldn't be a surprise. For editors, it'd be nice to have some coordination amongst the team on naming conventions, and to be able to check for typos. From the technical side, we may want to be able to prepare cloud resources (or even local resources, such as zip files) in advance of publication. Also we'd like to catch any technical errors in advance (issue #1401).

So here's what I'd do instead:

  • Add a slug field (null=True, unique=True) to the CoreProject.

  • When a project is accepted, if the CoreProject slug is null, prompt the editor to enter a slug.

  • When a project is archived, if the CoreProject has no published versions, then its slug should be reset to null.

  • After a project has been accepted and not published, if the CoreProject has no published versions, the editor may change the slug.

  • When the project is published, the new PublishedProject slug is copied directly from its CoreProject slug. (If the CoreProject slug is null, the project is not publishable.)

Eventually, we might also drop the slug field from the PublishedProject model.

@tompollard
Copy link
Member

When a project is accepted, if the CoreProject slug is null, prompt the editor to enter a slug.

I agree that it would be nice to have the slug earlier in the process. Your suggested workflow makes sense to me.

After a project has been accepted and not published, if the CoreProject has no published versions, the editor may change the slug.

We lose some of the value of an early-defined slug if it might change later, but I agree that having the flexibility to change up until publication is needed.

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

No branches or pull requests

2 participants