J'ai deux fichiers PDF qui sont faits "à la volée" en utilisant Prawn PDF.Rails et crevettes PDF - ajouter l'ID de l'élément actuel au nom de fichier?
Les fichiers PDF sont appelés jobsheet.pdf et discharge.pdf - leurs URL sont:
railsroot/kases/IDNO/jobsheet.pdf
railsroot/kases/IDNO/discharge.pdf
Je suis en train de travailler sur comment ajouter automagiquement le nom du fichier avec le numéro d'identification:
railsroot/kases/IDNO/jobsheet_IDNO.pdf
railsroot/kases/IDNO/discharge_IDNO.pdf
Pour créer les fichiers PDF le code est le suivant:
Kases contrôleur
def jobsheet
@kase = Kase.find(params[:id])
respond_to do |format|
format.html {} # jobsheet.html.erb
format.xml { render :xml => @kase }
format.pdf { render :layout => false }
prawnto :prawn => {
:background => "#{RAILS_ROOT}/public/images/jobsheet.png",
:left_margin => 0,
:right_margin => 0,
:top_margin => 0,
:bottom_margin => 0,
:page_size => 'A4' }
end
end
# GET /kases/1
# GET /kases/1.xml
def discharge
@kase = Kase.find(params[:id])
respond_to do |format|
format.html { } # discharge.html.erb
format.xml { render :xml => @kase }
format.pdf { render :layout => false }
prawnto :prawn => {
:background => "#{RAILS_ROOT}/public/images/discharge.png",
:left_margin => 0,
:right_margin => 0,
:top_margin => 0,
:bottom_margin => 0,
:page_size => 'A4' }
end
end
Routes
map.resources :kases, :member => { :discharge => :get }
map.resources :kases, :member => { :jobsheet => :get }
Pour afficher les fichiers PDF que j'utilise les liens suivants:
jobsheet_kase_path(@kase, :format => 'pdf')
discharge_kase_path(@kase, :format => 'pdf')
Est-ce même possible?
Merci,
Danny
Salut John, je remarquai que dans les documents il y a quelques minutes, mais il ne semble pas avoir d'effet. Les noms sont toujours jobsheet.pdf et discharge.pdf - mes itinéraires pourraient-ils remplacer le nom? Merci, Danny – dannymcc
Ahh - ignorez-moi. Le nom de fichier fonctionne, mais je m'attendais à un changement dans l'URL - mon erreur. Merci de votre aide! Merci, Danny – dannymcc