2016-12-30 8 views
0

Ich baue derzeit eine Web App, wo der Administrator in der Lage sein wird, einen Titel mit einer Beschreibung und einem Link/eingebettete Form von Wistia Video Player zu veröffentlichen.Erstellen Wistia Modell in Ruby on Rails

Derzeit mein Setup ist:

  • Begrüßungs-Seite
  • Dashboard-Seite mit Dashboard-Controller (hier nur der Admin wird der Lage sein, zu schreiben, zu bearbeiten Dinge, alle anderen Benutzer können nur zusehen/Kommentar)

Wie erstelle ich ein Modell dafür? Normalerweise würde ich ein Modell wie folgt erstellen:

rails g model Video title:string description:text 

Aber wie implementiere ich den Wistia Video-Player, so dass jedes Mal wenn der Admin einen neuen Beitrag erstellt, wird er in der Lage sein, ein neues Video zu verknüpfen/eingebettet?

Antwort

0

Wenn Sie richtig sind, möchten Sie ein Berechtigungssystem, das einem Benutzer mit der Rolle "Administrator" die Möglichkeit gibt, einen neuen Post mit einem eingebetteten Video zu erstellen? Normale "Benutzer" sollten das nicht können, oder? Haben Sie bereits ein "Login-System" oder etwas Vertrautes? Wenn nicht, sollten Sie ein Berechtigungssystem mit Sitzungen und solchen Sachen erstellen. (Stichwort: has_secure_password, BCrypt und Sessions). Nach dem Erstellen des Systems können Sie einfach eine before_action in Ihrem Video-Controller oder wie Sie es genannt haben. Mit der Vorher-Aktion können Sie einfach prüfen, ob der angemeldete Benutzer die Rolle "Administrator" hat. Wenn Sie nur das Einbetten von Videos verbieten möchten, überprüfen Sie einfach den Beitrag, bevor Sie ihn in Ihrer Tabelle in der Datenbank speichern.

+0

Hallo! Danke für die Antwort! Mein Login-System/Authentifizierungssystem ist bereits eingerichtet. Der Admin kann Dinge, einen Titel und eine Beschreibung veröffentlichen. Aber ich möchte auch, dass er in der Lage ist, Wistia-eingebettete Videos in seinem Beitrag zu posten. Ich denke, dass ich in der Wistia API weiter schauen muss. – Prometheus

+0

Ich weiß nichts über diese API, aber Sie könnten eine Vorlage in Ihrer show.html.erb erstellen, die einen Link verwendet und Sie könnten diesen Link in Ihrer Tabelle speichern (wenn Sie einen neuen Beitrag erstellen) und ihn dann in Ihre Vorlage einfügen es heißt. Sie können eine if-Anweisung verwenden, um zu prüfen, ob in der Tabellenzeile eine Verknüpfung vorhanden ist, um Fehler zu vermeiden. .. Sie müssen Ihr Videomodell jedoch folgendermaßen ändern: title: string Beschreibung: text link_url: string (in Ihrer db/migrations-Datei) Löschen Sie eine Tabelle mit: "ActiveRecord :: Migration.drop_table (: table)" – CodingSnow