2012-01-03 9 views
2

古い開発データベースを削除して、新しいレールを3.1.3アプリケーションに追加しました。私はそれが3.1.4にSASS-3.1.5問題とダウングレードがそれを修正しまう可能性がhereを読んだRails 3.1 - DB上の深すぎるスタックレベル:seed

[email protected]:~/workspace/media-choice$ bundle exec rake db:seed --trace 
** Invoke db:seed (first_time) 
** Invoke db:abort_if_pending_migrations (first_time) 
** Invoke environment (first_time) 
** Invoke disable_rails_admin_initializer (first_time) 
** Execute disable_rails_admin_initializer 
** Execute environment 
[DEPRECATION WARNING] Nested I18n namespace lookup under "activerecord.models.delayed_upload_error" is no longer supported 
** Execute db:abort_if_pending_migrations 
** Execute db:seed 
rake aborted! 
stack level too deep 
/home/rafael/.rvm/gems/[email protected]/gems/rake-0.9.2.2/lib/rake/task.rb:162 
Tasks: TOP => db:seed 
[email protected]:~/workspace/media-choice$ 

:私はbundle exec rake db:seed --traceを実行したときしかし、私は次のエラーを取得します。しかし、私にとってはうまくいかなかった。 また、hereを読むと、rvm gemsetの問題になる可能性があります。だから私は自分のrvmをアンインストールして、すべてのルビーと宝石を再インストールしました。しかし問題はまだここにあります。

私もそれが種子のファイルに私のミスかもしれないと思ったが、私はここでは問題を見ません。

# -*- encoding : utf-8 -*- 

occupation = Occupation.create!(name: 'Estudante') 

sponsor = Sponsor.create!(name: 'PROAC', logo: File.open('db/seeds/proac.jpg')) 

contest = Contest.create!(name: 'Tema Livre', description: 'descrição', start_date: Date.today - 1.month, end_date: Date.today + 1.month, 
          call_text: 'call text', logo: File.open('db/seeds/freesubject.jpg'), enabled: true, show_in_upload: true) 
contest.sponsors << sponsor 
contest.content_types.create!(name: 'video') 
contest.content_types.create!(name: 'audio') 
contest.content_types.create!(name: 'wording') 
contest.content_types.create!(name: 'photo') 

user = User.new(first_name: 'José', last_name: 'da Silva', email: '[email protected]', password: 'senhasenha', 
        country: 'Brasil', state: 'SP', city: 'São Paulo', gender: 'Masculino', birthdate: Date.today - 30.years, 
        commercialize_videos: true) 
user.occupation = occupation 
user.confirm! 
user.save! 

user2 = User.new(first_name: 'José', last_name: 'da Silva', email: '[email protected]', password: 'senhasenha', 
        country: 'Brasil', state: 'SP', city: 'São Paulo', gender: 'Masculino', birthdate: Date.today - 30.years, 
        commercialize_videos: true) 
user2.occupation = occupation 
user2.confirm! 
user2.save! 


user3 = User.new(first_name: 'José', last_name: 'da Silva', email: '[email protected]', password: 'senhasenha', 
        country: 'Brasil', state: 'SP', city: 'São Paulo', gender: 'Masculino', birthdate: Date.today - 30.years, 
        commercialize_videos: true) 
user3.occupation = occupation 
user3.confirm! 
user3.save! 

誰もが任意のヒントを持っていますか?

ありがとうございました!

+0

完全なエラーログを投稿してください。 – socjopata

+0

フルトレースを追加するように編集しました。ありがとうございました! – manzo

+2

無限ループを作るコールバック(after_saveなど)で、あなたのモデルのどこかにロジックがあると思う以外は、あまり助けになりませんでした。 – socjopata

答えて

1

私はこれが古い投稿だと知っていますが、非常に長い間同じエラーを処理しただけで、あなたや将来の視聴者を助けることができると思います。

私の場合、問題はエスケープされていない文字でした。具体的には、私が播種していた(約10万の)エントリの中に一重引用符がありました。一度私はこれらを\ 'と置き換えたが、もはや問題はなかった。

あなたの貼り付けられたコードに "e"のアクセントが付いています。間違ったエンコーディングが使用されている場合、これらが問題になる可能性があることはわかっています。

2

うまくいけば、これは誰かを助けるでしょう。

私が追加したafter_saveメソッドのおかげで、何度も繰り返し呼び出されていました。私はそれをafter_createに変更し、すべてが順調です。

関連する問題