2016-12-08 5 views
0

Wie zu tun, Posts werden nur nach Admin-Appriving in Ruby on Rails App mit (State_machine oder Workflow) veröffentlichen?Veröffentlichung Posts nach Admin Genehmigung in Rails

+0

benötigen Sie wirklich State_Machine oder Workflow dafür? – bTazi

+0

Fügen Sie Ihrem Post-Modell die Spalte "genehmigt" hinzu und erstellen Sie die Admin-Schnittstelle. State Machine wahrscheinlich brauchen Sie, wenn Sie E-Mails an Admin mit Nachricht über neue Beiträge senden würde. –

Antwort

1

Ich würde nicht mit state_machine oder workflow Edelsteine ​​stören, da Sie sehr wenige Zustände und Verhaltensweisen an sie gebunden haben.

Diese Edelsteine ​​sind mehr für die Ausführung von Code basierend auf sehr vielen Zuständen.

Werfen Sie einen Blick auf die Vehicle Beispiel in der state_mahcine Docs.

https://github.com/pluginaweek/state_machine#example

ich erreicht habe, was Sie versuchen zu tun, bevor einfach durch eine enum verwenden.

Fügen Sie Ihrem Modell enum einen Namen status hinzu.

enum status: [:draft, :review, :published] 

Sie benötigen eine integer Spalte status auf Ihre Postings genannt hinzuzufügen.

Jetzt wo immer Sie die Posts anzeigen, einfach die unveröffentlichten Posts abfragen.

@posts = Post.published 

ich hinzugefügt, um den Status :draft, :review und :published, aber Sie als wenige oder viele Aufzählungen haben könnte.

+0

Genau das, was ich sagen wollte :) – bTazi

+0

@fbelanger Vielen Dank Mach! – Timothy94

Verwandte Themen