2012-03-08 11 views
6

Stworzyłem stół w krewetce i chciałem przekazać opcję :position, która jest również udokumentowana w instrukcji, ale wyrzuca błąd Method_missing. Wygląda na to, że ten parametr już nie istnieje. Jak mogę wyśrodkować stół w krewetce?Jak ustawić stół w krewetce?

Odpowiedz

5

wpadłem na ten sam błąd. Instalowanie z mastera na Github rozwiązało problem.

# Gemfile 
gem 'prawn', git: 'https://github.com/prawnpdf/prawn.git' 

Issue thread on Github

+0

Prawdopodobnie warto wspomnieć o ustawieniu: ref w swoim Gemfile w przypadku, gdy master się zepsuje (wtedy twoje środowisko produkcyjne się zepsuje). –

+0

dzięki, koleś, to załatwiło sprawę! – davidb

3

Nadzieja to pomaga

pdf.table tablename, 
    :border_width => 0, 
    :font_size => 11, 
    :position => :center 
+1

Jak powiedziałem, gdy próbuję użyć tej opcji pojawia się niezdefiniowany błąd metoda: 'Error: /usr/local/lib/ruby/gems/1.9.1/gems/prawn-0.12. 0/lib/prawn/table.rb: 125: in 'block in initialize ': niezdefiniowana metoda' position =' dla # (NoMethodError) ' – davidb

+0

spróbuj zainstalować' gem 'prawn-layout''' lub spróbuj tego, jeśli powyższe nie zadziała 'gem 'prawn',: git =>" https://github.com/prawnpdf/prawn.git "' – bharath

+0

Jeśli mamy wskazywać na ten dupek, to jakby pewnego dnia ten git został usunięty? Czy nie ma innego sposobu na rozwiązanie tego problemu? – ksugiarto

0

czy generowanie PDF jest z zadeklarowaną klasą lub w kontrolerze trzeba dodać następującą linię do Gemfile

gem 'prawn-table', '~> 0.2.1' 

W chwili pisania tego tekstu, który jest wersja z klejnotem, da ci dostęp do metod tabel, takich jak pozycja

Użyłem tego w tym przykładzie an d pracował

def table_items(chart_data, doc) 
    table = Prawn::Table.new(table_rows(chart_data), doc, {:header => true}) 
    table.row(0).font_style = :bold 
    table.position = :center 
    table.draw 
end