문제

사용자가 분류 된 것을보고/게시/답장 할 수있는 분류 엔진을 만들어 레일 엔진을 시험해보고 있습니다.

기본 응용 프로그램에는 사용자 인증을위한 코드가 포함되어 있으며 프로파일이 포함되어 있으며 분류 기능을 다루는 엔진이 있습니다.

이제 분류 엔진의 데이터베이스에 샘플 데이터를 추가하고 싶습니다. 그래서 'vendor/plugins/classifieds/lib/tasks'에서 'sample_classifieds_data.rake'라는 갈퀴 파일을 만들었고 'vendor/plugins/classifieds/lib/tasks/sample_classifieds_data'에 YML 파일을 추가했습니다.

레이크 파일의 코드와 샘플 YML 파일은 다음과 같습니다. http://gist.github.com/216776

이제 문제는 레이크 작업을 실행할 때 오류가 발생하지 않지만 데이터베이스에서 값이 채워지지 않는다는 것입니다.

어떤 아이디어? BTW는 개발 환경이며 데이터베이스는 개발 데이터베이스입니다.

나는 비슷한 레이크 작업을 실행하여 효과가있는 데이터베이스에서 샘플 사용자를 채 웁니다. 해당 레이크 파일 'Sample_Data.Rake'의 위치는 'lib/tasks'에 있습니다.

도움이 되었습니까?

해결책

당신의 임무는 좋아 보인다. 유일한 것은 작업이 조용히 실패하게 만드는 유일한 것은 Fixture에 전달하는 파일이 YML 또는 CSV 파일을 가리키지 않는다는 것입니다.

푸트 명령문을 수정하여 가져온 파일의 전체 경로를 인쇄하고 디렉토리 구조와 인쇄 한 내용을 비교하여 두 번 확인하십시오.

예를 들어, 고정물 파일이 대문자로 시작하면 상황이 조용히 실패합니까? category.yml 대신 Category.yml

다른 팁

Rails 가장자리에서는 사용할 수 있습니다 rake db:seed 기본에 데이터를 추가하는 기능. 커밋을 참조하십시오.

사용은 매우 간단합니다.

a db/seeds.rb 파일.
데이터베이스를 시드하려는 코드를 넣으십시오.

예를 들어 :

Category.create!(:name => 'My Category')
Country.create!(:name => 'Cassoulet Land')

그리고 데이터베이스를 시드하고 싶을 때 rake db:seed

어떤 이유로 든 에지를 사용하고 싶지 않다면 (생산 환경에서 이해할 수 있음) 종자 푸 플러그인, 당신을 위해 트릭을 수행합니다.

DB : 종자 작업은 레일 2.3.4에 추가되었습니다. 따라서 에지를 실행할 필요가 없습니다.

http://weblog.rubyonrails.org/2009/9/4/ruby-on-rails-2-3-4

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top