2014-11-14 2 views
0

저는 pg에있는 데이터베이스와 함께 heroku에서 호스팅되는 레일 애플리케이션 4.2의 루비로 데이터를 가져 오려고했습니다. 나는이 튜토리얼을 시도했으나 효과가 없었다.heroku에서 데이터 응용 프로그램 루비 가져 오기

http://railscasts.com/episodes/396-importing-csv-and-excel?view=asciicast dreams 컨트롤러에서 메소드를 가져올 수 없다.

본문은 내 앱으로 데이터를 가져 오는 좋은 방법을 알고 있습니까? 감사합니다. Felipe

+0

어리석은 질문이지만 리모컨으로 파일을 푸시 한 것을 기억 했습니까? –

+0

로컬 (Mysqlite)의 내 db와 원격 (Pg)의 db 사이에는 연결이 없습니다. 다른 버전의 웹 사이트에서 루비 온 레일 (ruby on rail)을 통해 새로운 데이터로 마이 그 레이션하기. 그래서 CSV로 증명하려고 노력하면서 정보를 이전하기 시작했습니다. 이것이 당신의 질문인지 모르겠습니다. 난 괜찮아? 협조 해 주셔서 감사합니다. – user2284348

+0

다음은 오류의 스크린 샷입니다. https://www.evernote.com/shard/s447/sh/bc54becd-2c39-4ec7-b139-f9defc7651f0/9caea62319ac2ecad30ac0738931a649 – user2284348

답변

0

import이 dreams_controller에 없다면 import 메서드를 올바르게 정의하지 않은 것 같습니다. 즉, 생략 또는 자습서의이 부분 엉망 중 하나

/app/controllers/products_controller.rb

def import 
    Product.import(params[:file]) 
    redirect_to root_url, notice: "Products imported." 
end 

을 당신은 도움을 훨씬 쉽게 될 코드를 게시 할 수있는 경우 .

+0

도움에 감사드립니다! 이것은 내 dreams_controller.rb입니다. def import Dream.import (params [: file]) redirect_to root,주의 사항 : "꿈을 가져 왔습니다." end end – user2284348

+0

튜토리얼을 보면 params에서 매개 변수로 가져올 파일의 경로가 필요합니다. IE. 'Product.import (params [: file])''Dream' 모델의'import' 메소드는 그 파일을 파싱합니다. 당신은'id'를'import'의 값을 가진 param으로 전달하고 있습니다 만, 이것은 작동하지 않을 것입니다. – mattforni

+0

안녕 Matt, 고마워! 이 시도하고있어 : 개인 def set_dream @dream = Dream.find (매개 변수 [Rails.root + "app/csv/estructura.csv"]) 끝이 결과 : https : // www. evernote.com/shard/s447/sh/0b40a56f-e21a-4404-8046-fdd85f887460/1ab9b0e0cb7d7885afa07708d08f4d70 – user2284348

0

누락 된 방법은 dream.rb 모델 안에 있습니다. 당신이 필요합니다

전화 할 때 Dream.import(params[:file]) 실제로 드림 모델의 클래스 메소드를 호출하기 때문에입니다
def self.import(file) 
    CSV.foreach(file.path, headers: true) do |row| 
    Dream.create! row.to_hash 
    end 
end 

.

+0

이것은 내 꿈입니다 .rb : def self. iported (파일) CSV.foreach (파일 경로, 헤더 : true) do ⎮row⎮ \t Dream.create! 열.tohhash \t end end – user2284348

+0

self.iported는 self.import 여야합니다. stackoverflow 또는 코드에서 오타가 있었습니까? –

+0

좀 더 설명해 주시겠습니까? :) 감사! 내가 튜토리얼에서 만든 것처럼, 내가 뭘 잘못하고있는거야? – user2284348

관련 문제