Move workshop domain rules out of Admin::WorkshopsController
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 35/100
Direzione di ricerca
This umbrella issue is decomposed into #2939, #2940, and #2941, so start with the relevant sub-issue rather than changing it directly. Read Admin::WorkshopsController and Workshop, then follow the named methods and destroy path. Done means each independently shippable extraction is implemented and the controller no longer owns the specified domain rules.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Problem
Admin::WorkshopsController is the largest controller in the app (~295 lines) and holds domain logic below the presentation layer:
- Domain validation in the controller (
workshop_type_valid?adds a model error from the controller) - Deletion policy in the controller (4-hour window + no-invitees rule)
- Organiser grant/revoke role diffing in private controller methods
Plan
This decomposes into three independent, individually shippable changes, tracked as sub-issues:
- #2939 — Move the "physical workshop needs a host" validation onto
Workshop - #2940 — Add
Workshop#deletable?and use it inAdmin::WorkshopsController#destroy - #2941 — Extract organiser grant/revoke diffing from
Admin::WorkshopsController
Each can land separately; no ordering required.
- Lingua principale
- Ruby
- Stelle
- 106
- Fork
- 208
- Merge medio
- 19h 51m
- PR unite (30g)
- 57
Preparare l'ambiente
- Include un Dockerfile o un file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di codebar/planner
-
Preload workshop_host in DashboardQuery.upcoming_events_for_user (per-workshop N+1 on /dashboard)Forse già presa Una pull request collegata a questa issue è aperta o già unita. Apertaperformance
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
codebar/planner#3070 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
I maintainer di solito rispondono entro 1 giorno
-
Extra stat on new admin pageApertaenhancement
Difficoltà 4/5 3-5 giorni Idoneità per principianti 48/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 3/5 Mezza giornata Idoneità per principianti 35/100
codebar/planner#3069 · 1 commento · 1 reazione ·
I maintainer di solito rispondono entro 1 giorno
-
Dual Invitiation issueForse già presa @mroderick l’ha presa 21 giorni fa. Aperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 42/100
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di codebar/planner
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
nesquena/steward-os#79 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
I maintainer di solito rispondono entro 1 giorno
-
[Bug] Time search attributes lose sub-second precision, and raise NoMethodError without `require 'time'`Forse già presa @RaphaelFakhri l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
temporalio/sdk-ruby#653 ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 67/100
bridgetownrb/bridgetown#1134 ·
-
Go: a namespaced model's fixture file is loaded through `NewAdmin::Note()`, which doesn't parseAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
rubys/roundhouse#1820 ·