J'essaie de démarrer le programme où je ne peux pas lire dans un fichier csv et il imprime les données sur un fichier pdf. Maintenant j'ai un problème. Heres mon code:Mauvaise méthode de crevette ou mauvais objet?
------------------------------------
require_relative 'friends'
class List
attr_accessor :list_name, :list
def initialize(list_name)
@list_name = list_name
@list = []
end
def list_name
@list_name
end
def liste
@list
end
def wert(place)
@list[place].to_s
end
def list_length
@list.length
end
def print_list
@list.each do |freunde|
"#{freunde.name},#{freunde.age}"
end
end
def add_friend(a_friend)
@list.push(a_friend)
end
def load_friend(from_file)
File.readlines(from_file).each do |line|
add_friend(Freunde.from_csv(line))
end
end
end
-------------------------------------------
require_relative 'list'
class Friends
attr_accessor :name,:age
def initialize(name, age)
@name = name
@age = age
end
def self.from_csv(string)
name, age = string.split(',')
Freunde.new(name,age)
end
def friends
@name
end
end
-------------------------------------------
require 'prawn'
require_relative 'list'
require_relative 'friends'
class Generating
include Prawn::View
def initialize
@document = Prawn::Document.new(:page_size => "A4")
@fontpath = File.expand_path("../data/fonts", __FILE__)
liste1 = Listen.new("Friendslist")
liste1.load_friend("test.csv")
print_list
save
end
def print_friends
font("#{@fontpath}/Arial.ttf") do
font_size 11
text_box("#{liste1.print_list}", :at => [15,405], :height => 50,
:width => 250)
end
end
def save
self.render_file "Hello.pdf"
end
end
---------------------------------------------
Quand je crée maintenant une nouvelle génération de l'objet:
gen = Generating.new
alors il échoue le programm ensemble parce que l'erreur dit méthode Unknow (print_list). Suis-je soumettre le mauvais objet pour la méthode (liste_impression), ou utilise les méthodes de sortie de texte de la crevette mal?
"l'erreur indique la méthode unknow (print_list)" - Je * fortement * doute que c'est ce que l'erreur dit. Je suis certain à 100% qu'il va * au moins * vous indiquer un numéro de ligne et afficher une trace de pile. Sans cela, il n'y a pas assez d'informations pour que nous puissions vous aider. Quel est le message d'erreur * precise *? Quel résultat attendez-vous et pourquoi? Quel est le comportement désiré et pourquoi? Pouvez-vous fournir une spécification * précise * de ce que vous voulez faire, y compris toutes les règles, les exceptions de ces règles, les cas de coin, les cas spéciaux, les cas limites et les cas de bordure? ... –
... Pouvez-vous fournir des exemples d'entrées et de sorties démontrant ce que vous attendez, à la fois dans des cas normaux et dans toutes les exceptions, les cas d'angle, les cas spéciaux, les cas limites et les cas limites? S'il vous plaît, fournissez également un [mcve]. (Avec un accent particulier sur * minimal *: je doute fortement qu'il nécessite 100 lignes pour reproduire le problème, en fait, je parie, vous pouvez démontrer le problème en 2 lignes courtes.) –
Mon erreur dit, "sur mon chemin où le Gem Prawn est installé: C:/Ruby24-64/.... dans "method_missing": variable locale undefinde ou méthode "print_list" pour # ". –
Alassar