我希望能夠將我的xml存儲到臨時文件中,然後將其發送到另一個控制器中的另一個方法進行處理。目前它不允許我一次發送就讀取文件,因爲它是一種私人方法。Ruby on Rails - 將XML存儲在臨時文件中
控制器#1
xml_doc = Nokogiri::XML(@builder.to_xml)
@tempfile = Tempfile.new('xml')
@tempfile.write(xml_doc)
redirect_to upload_xml_admin_events_path(:file => @tempfile)
控制器#2
版本#1
xml = params[:file].read
xmldoc = Nokogiri::XML(xml)
給了我這個錯誤:未定義的方法`讀」爲 「文件:0x6ebfb00」:字符串
版本#2
xml = params[:file]
xml.open
xmldoc = Nokogiri::XML(xml)
給了我這個錯誤:私有方法'開放」呼籲‘#FILE:0x6a12bd8’:字符串
如果你想該文件是真正的臨時工,在選項2,你可以使用XmlFile.delete(PARAMS [:XML])將其刪除,並在同一時間將其加載到@xml。 – rurabe
我很喜歡你的數據庫創意,謝謝!有時候我只是需要別人的意見 – user1977840