Delete vestigial MailingListForm; use button_to for subscribe/unsubscribe
Mantenedores costumam responder em até 1 dia
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 2/5
- Tempo estimado
- 1-3 horas
- Facilidade para iniciantes
- 88/100
Direção de pesquisa
Leia primeiro app/views/subscriptions/index.html.haml e app/form_models/mailing_list_form.rb e, em seguida, inspecione a cobertura da página de subscriptions em spec/features. Confirme as rotas existentes de Create e Destroy e as ações de MailingListsController antes de alterar a view. A tarefa estará concluída quando os dois botões se comportarem da mesma forma, o cancelamento da inscrição continuar usando DELETE, o form model tiver sido removido e as feature specs relevantes passarem.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Problem
app/form_models/mailing_list_form.rb is a one-line ActiveModel::Model class (attr_accessor :name) that exists only as an anchor object for two simple_form_for wrappers in app/views/subscriptions/index.html.haml. Those "forms" are just subscribe/unsubscribe buttons — no fields are rendered, and MailingListsController ignores all params (its create/destroy read nothing). TermsAndConditionsForm stays — it has a real acceptance validation and .valid? gate.
Proposed change
- Replace both
simple_form_for @mailing_list, ...wrappers withbutton_to(native Rails: handles POST/method: :delete, CSRF, and accepts the sameclass: 'btn btn-success btn-lg mb-0'). - Delete
app/form_models/mailing_list_form.rb. - No controller or route changes.
Acceptance
- Subscribe/unsubscribe buttons on the subscriptions page behave identically (including
method: :deletefor unsubscribe). MailingListFormno longer exists.spec/featurescovering the subscriptions page pass.
- Linguagem predominante
- Ruby
- Estrelas
- 106
- Forks
- 208
- Merge médio
- 18h 3min
- PRs com merge (30d)
- 74
Preparar o ambiente
- Inclui um Dockerfile ou arquivo Docker Compose
- Sem modelo de pull request
- Ler o guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de codebar/planner
-
DashboardQuery eager-loads workshop_host with :sponsors in one join (same host-loss trap as #2975)Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
Mantenedores costumam responder em até 1 dia
-
Add preboot context to strong_migrations destructive-operation messagesTalvez já em andamento @costajohnt assumiu há 2 dias. Abertaenhancement
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 76/100
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
Mantenedores costumam responder em até 1 dia
-
Dual Invitiation issueTalvez já em andamento @mroderick assumiu há 12 dias. Aberta
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 42/100
Mantenedores costumam responder em até 1 dia
-
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 28/100
codebar/planner#3008 · 2 comentários ·
Mantenedores costumam responder em até 1 dia
Todas as issues de codebar/planner
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 62/100
hackclub/hcb#15454 · 3 comentários ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 76/100
voxpupuli/puppet-archive#566 ·
-
area/tech debt
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 77/100
Mantenedores costumam responder em até 2 dias
-
verified
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 67/100
Mantenedores costumam responder em até 5 dias
-
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 86/100
akitaonrails/ai-book-2026#10 ·