io non so come si salva l'immagine allegato URL, ma in generale, un nome di file dovrebbe avere:
/Users/mohit/projects/my_app/public/system/attachments/4/original/Screen Shot 2011-11-04 at 3.14.03 PM.png
Avviso non ha alla fine "xxxxx?".
È possibile controllare il file system, indipendentemente dal fatto che il nome del file sia "Schermata 2011-11-04 alle ore 3.14.03 PM.png" o "Schermata 2011-11-04 alle 3.14.03 PM.png" 1320582022 ".
Per l'URL del file, è possibile che si tratti di: http://example.com/xxx?dddd, quale carattere "?" dividere il percorso e i parametri. La stringa "dddd" è un parametro quando viene richiesto il percorso url, non è una parte del percorso o del nome file. I parametri supportano solo in url, non il nome del file locale.
Quindi, penso che sia necessario verificare il codice di salvataggio dell'URL di collegamento immagine, che deve escludere i parametri e solo il nome file. E assicurati che il nome sia esattamente uguale al file salvato su disco.
E si può provare ad aprire il file anche se irb direttamente e controllare l'output:
>>> irb
irb> f = open('/Users/mohit/projects/my_app/public/system/attachments/4/original/Screen Shot 2011-11-04 at 3.14.03 PM.png?1320582022')
Altri, cercare di trovare la posizione di errore nella send_file, e controllare il nome del file.
Non riesco ancora a verificare quale sia veramente il problema, solo qualche suggerimento.
se analizzi il codice usando brakeman, allora mostrerà l'errore come attributo MOdel usato come nome file. basta correre il frenatore. è considerato come send_file Image.find (parametri [: id]). Loaded_file.path – errakeshpd