2009-09-26 8 views
7

Sto usando Ruby 1.9 e Rails 2.3.4 con Paperclip gem per salvare gli allegati. e ho seguito il tutorial aggiungendo la corretta migrazione, aggiungendo (has_attached_file: video) al modello, rendendo il modulo (multipart) e aggiungendo <% = f.file_field: video%> ad esso ...Graffetta non riuscito a salvare l'allegato

Quando provo di caricare un file guardo nel log e vedo:

[paperclip] Saving attachments. 

Ma il file non è realmente caricato e i campi aggiuntivi che sono stati aggiunti dalla graffetta sono tutta vuota !!

Il fatto che non stia generando alcun errore mi rende confuso da dove iniziare a cercare possibili problemi. Sto usando MAC OSX Leopard, è possibile che sia una cosa delle autorizzazioni? in tal caso, come posso dare il permesso "sudo" alla mia app?

Qualche idea su quale sia il problema o su come posso visualizzare una registrazione migliore per sapere dove cercare i problemi.

Grazie,

Tam

Il registro:

SQL (0.2ms) SET NAMES 'utf8' 
    SQL (0.2ms) SET SQL_AUTO_IS_NULL=0 


Processing PostsController#create (for 127.0.0.1 at 2009-09-26 17:08:26) [POST] 
    Parameters: {"authenticity_token"=>"ZhEzTVQScgZxV9KY0Eo+sG5sHwn1kHgykvy11ovvfSU=", "post"=>{"title"=>"asd fasdf ", "description"=>"asdf as fasd f", "video"=>#<File:/var/folders/RH/RHekFGKME9uDJbX4d4DG3E+++TI/-Tmp-/RackMultipart20090926-27216-m28uwg-0>, "video_link"=>"", "is_notify_when_comment"=>"0"}} 
I'm in load_user 
    User Columns (3.7ms) SHOW FIELDS FROM `users` 
    User Load (0.6ms) SELECT * FROM `users` WHERE (`users`.`id` = 3) LIMIT 1 
    Post Columns (3.0ms) SHOW FIELDS FROM `posts` 
WARNING: Can't mass-assign these protected attributes: video 
    SQL (0.2ms) BEGIN 
    Post Create (0.4ms) INSERT INTO `posts` (`title`, `description`, `video_link`, `is_notify_when_comment`, `view_count`, `is_ours`, `votes_up_count`, `votes_down_count`, `flag_count`, `is_deleted`, `user_id`, `created_at`, `updated_at`, `video_file_name`, `video_content_type`, `video_file_size`, `video_updated_at`) VALUES('asd fasdf ', 'asdf as fasd f', '', 0, 0, 0, 0, 0, 0, 0, 3, '2009-09-27 00:08:27', '2009-09-27 00:08:27', NULL, NULL, NULL, NULL) 
[paperclip] Saving attachments. 
    SQL (24.0ms) COMMIT 
Redirected to http://localhost:3000/posts/10 
Completed in 477ms (DB: 32) | 302 Found [http://localhost/posts] 
+1

Puoi pubblicare la relativa p ortions del tuo development.log? Che aspetto ha l'hash params? –

+0

Ciao James ho pubblicato il codice sopra – Tam

risposta

14

ho capito qual era il problema

ho dovuto aggiungere: il video nel mio attr_accessible nel modello in modo da non stava assegnando quel video e non stava lanciando un errore

+1

Grazie per questo. Ho passato troppe ore a cercare di capirlo. Ho anche provato questo con __attr_accessor__ e questo __not__ funziona, deve essere __attr_accessible__ –

+0

Se potessi darti un bacio lo farei! Una cosa così stupida da mancare, ma ha fatto un'enorme differenza. Fastidioso che non ci siano avvisi come si otterrebbero per altri attributi ... –

+3

Ho lo stesso identico problema, ma l'aggiunta di attr_accessible non lo risolve. Ancora inserendo 'nil' per i 4 attributi. Qualche idea? –