2017-08-15 2 views
0

Ich werde Route zu Rubin String speichern. Und ich traf dieses Problem.Rubin String für Route Ausgabe

b = B.new 
b.str = "/json.log" 
puts b.str 
b.save 

result: 

NULL 

Und wenn ich das Str Feld in Navicat ändern, zeigt es so.

puts b.str 

Ergebnis:

public/uploads/B/src/1/json.log 

Gibt es jemanden, der mich mit Ruby-String und Route kann helfen?

+0

Versuchen Sie 'puts b.errors'. Ich denke, Sie haben die modale Validierung nicht bestanden, daher wird die Aufzeichnung nicht gespeichert. – bananaappletw

+0

'puts b.errors' Ergebnis' <#ActiveModel: Fehler: 0x007fa7a262fb78> ' –

+0

Korrigiert, versuche' puts b.errors.inspect'. – bananaappletw

Antwort

0

Ich habe einen folgenden Code erstellt.

mount_uploader :str, JsonUploader 

Es konvertiert '/json.log' zu null in Tabelle Und umgewandelt '/json.log' in Tabelle 'public/uploads/B/src/1/json.log'

Ergebnis: mit mount_uploader Sie die Route nicht als String einstellen.