Es tut mir leid, mein Englisch ist schlecht. Frage: Ich habe Modell Seiten mit Spalten Titel, Beschreibung usw. Ich kann diese Seiten erstellen, ändern, zerstören. Ich kann den Inhalt des Links mydomain/pages/1
sehen. Ich brauche für jede Seite Vorlage und Route, damit ich den Inhalt auf dem Link sehen kann, zum Beispiel maydomain/contacts
. Wie es geht? Hilf mir bitte.Ruby on Rails Seitensteuerung
Antwort
Eine Möglichkeit, Ihre eigene Lösung zu implementieren, ist diese Datei auf Ihren Routen hinzuzufügen:
get '/mydomain/:slug, to: 'pages#show'
Dies ist eine ziemlich allgemeine Matcher, so dass es an der Unterseite der Routen hinzufügen, damit es nicht der Fall ist überschreiben andere.
Dann Aktion des Controllers Show wird etwas wie folgt aussehen:
def show
@page = Page.find_by_slug(params[:slug])
end
Diese natürlich vorausgesetzt, dass Sie eine Schnecke Spalte auf Ihrer Seiten Tisch.
ich mit „mydomain“ gehe davon aus Sie die Root-URL Ihrer Website bedeuten (zB myapp.example.com)
Ich würde vorschlagen, dass Sie das Problem in zwei Teile trennen:
- Verwenden Sie ein anderes Attribut als ID, um ein Element in der URL zu identifizieren
- Reduzieren Sie die Route, sodass der Controller nicht angegeben werden muss.
Für 1, haben einen Blick auf diese: Rails routes with :name instead of :id url parameters Beachten Sie, dass als @spickermann friendly_id schlägt vor, für Sie eine gute Lösung sein könnte.
Für 2 müssen Sie eine Route ohne den Namen des Controllers erstellen und dann den Controller in der Routendefinition angeben. (Siehe Rails Routing Guide):
get ':param', to: :show, controller: 'pages'
Damit das funktioniert, müssen Sie es nach (unten in routes.rb) setzen, so dass es nicht mit anderen Strecken nicht intefer. Ich würde auch empfehlen adding a constraint to the route - die falschen URLs zu begrenzen, die zu diesem Router geroutet werden könnten.
- 1. Curl on Ruby on Rails
- 2. Ruby on Rails Entschlüsselung
- 3. ruby-on-rails: gravatar_for
- 4. Ruby On Rails Application.html.haml
- 5. Ruby on Rails Fehler
- 6. Ruby on Rails fehlgeschlagen
- 7. Ruby on Rails einrichten
- 8. Ruby on rails Verbindungsproblem
- 9. Ruby on rails Pfadhelfer
- 10. Ruby on Rails regex
- 11. Ruby on Rails Authentifizierung
- 12. Ruby on Rails, atom
- 13. Ruby On Rails Migration
- 14. Ruby on Rails Beziehungen
- 15. Feldprüfung Ruby on Rails
- 16. Ruby on Rails-Vorlage
- 17. Ruby On Rails Grundvariable
- 18. Ruby-on-Rails Authentifizierungsanleitung
- 19. Ruby on Rails bietet
- 20. Ruby on rails Queing
- 21. LocalJumpError (Ruby on Rails)
- 22. Ruby on Rails Libelle
- 23. Ruby on Rails Cache
- 24. Ruby on Rails Formularfehler
- 25. Ruby On Rails Dateiselektor
- 26. Ruby on Rails - FCKEditor Absoluter Bildpfad Ruby
- 27. SSL mit Ruby on Rails
- 28. Rake und Ruby on Rails
- 29. Ruby on Rails mit chargify
- 30. Ruby on Rails und CruiseControl.rb
Vielleicht möchten Sie sich den [friendly_id] (https://github.com/norman/friendly_id) Edelstein ansehen. – spickermann