/ / Wie ich meine Benutzer-ID beim Hochladen von eckigen Dateien mit Schienen verknüpfen kann - Ruby-on-Rails, Angularjs, Datei-Upload

Wie kann ich meine Benutzer-ID in angular-Datei-Upload mit Rails verknüpfen - Ruby-on-Rails, angularjs, Datei-Upload

Ich verwende Angular-File-Upload ( https://github.com/nervgh/angular-file-upload Ich möchte die Benutzer-ID für den Fremdschlüssel beim Hochladen des Fotos zuordnen.

Dies wird die Struktur für das Modell

Benutzer hat viele Fotos

Beispielcode:

var uploader = $scope.uploader = new FileUploader({
url: "http://localhost:3000/photos/"
});

HTML Quelltext:

<input type="file" nv-file-select="" uploader="uploader" multiple  /><br/>

<button type="button" class="btn btn-success btn-xs" ng-click="item.upload()" ng-disabled="item.isReady || item.isUploading || item.isSuccess">
<span class="glyphicon glyphicon-upload"></span> Upload


<button type="button" class="btn btn-success btn-s" ng-click="uploader.uploadAll()" ng-disabled="!uploader.getNotUploadedItems().length">
<span class="glyphicon glyphicon-upload"></span> Upload all

Antworten:

1 für die Antwort № 1

Sie möchten so etwas tun: assuming the user"s id is in $scope.user.id

var uploader = $scope.uploader = new FileUploader({
url: "http://localhost:3000/photos/",
formData: [
user_id: $scope.user.id
]
});

Dies fügt einen neuen Parameter mit der Anfrage hinzu, die die ID des Benutzers hat dann können Sie im Rails-Controller etwas tun wie:

@photo = Photo.create(photo: params[:file],user_id: params[:user_id])