1

わかりました、私は ruby​​/rails を学ぼうとしています (私は 1993 年に C++ で歯を切りました)

誰でもこれが理由を教えてもらえますか:

class FeedHolder
    @rssfeed
    @rss

    #attr_accessor :rssfeed,:rss

    def rssfeed
        @rssfeed
    end

    def initialize(feed,rss)
        @rssfeed,@rss = feed, rss
    end
end

このように入力されています

  @rssfeeds.each do |rssfeed|
    @myrssurl=rssfeed.url.gsub(/'/,"")  
    @rss=Feedzirra::Feed.fetch_and_parse(@myrssurl) 
    @myfeedguy = FeedHolder.new(rssfeed,@rss)
    @myrsslist.push(@myfeedguy)

このエラーが表示されます

「#FeedHolder:0xa0a8bec の未定義メソッド `rssfeed'」

私がこれをするとき?ところで、ゲッターがなくても myfeedguy.rss への呼び出しについて文句を言うことはありません。はい、attr_accessor と他の多くのものを試しました。

<% @myrsslist.each do |myfeedguy| %>
<% if(myfeedguy.rss == 0) then %>
        "No feeds to show"</br>
    <% else %>
        <%=myfeedguy.rssfeed%>

        </br>
            <a href='' onclick='showfeed("")'>x</a>
        </br>
    <% end %>
<%end%>

thx 前もってスチュアート

4

1 に答える 1

0

あなたは正しい軌道に乗っているようです。この例は役に立ちますか?

class FeedHolder
  def initialize(feed,rss)
    @rssfeed, @rss = feed, rss
  end
  attr_accessor :rssfeed,:rss
end

@rssfeeds = %w(a b c d)
@myrsslist = []

def fetch_and_parse(rssurl)
  "Imagine this was fetched and parsed from: #{rssurl}"
end

@rssfeeds.each do |rssfeed|  
  myrssurl = rssfeed.gsub(/'/,"")  
  rss = fetch_and_parse(myrssurl) 
  myfeedguy = FeedHolder.new(rssfeed, rss)
  @myrsslist.push(myfeedguy)
end

require 'pp'
pp @myrsslist

出力:

$ ruby tmp.rb 
[#<FeedHolder:0x00000001b00800
  @rss="Imagine this was fetched and parsed from: a",
  @rssfeed="a">,
 #<FeedHolder:0x00000001b00738
  @rss="Imagine this was fetched and parsed from: b",
  @rssfeed="b">,
 #<FeedHolder:0x00000001b00670
  @rss="Imagine this was fetched and parsed from: c",
  @rssfeed="c">,
 #<FeedHolder:0x00000001b005a8
  @rss="Imagine this was fetched and parsed from: d",
  @rssfeed="d">]
于 2012-09-27T14:52:43.477 に答える