0

私はすべてを慎重に計画し、ローカルでテストしましたが、デプロイした後、herokuでアプリをクラッシュさせた多くの役に立たないレコードが作成された可能性があります。

私の目的は、多くのモデルを1つのトピックモデルに統合することなので、Herokuコンソールで以下のスクリプトを使用しました(最初は1つのレコードをテストする必要がありました)。

> Question.find_each do |q|
* @qt=q.title
> @qd=q.description
> @q="Question"
> @ca=q.created_at
> @ui=q.user.id
> @uvt=q.user_votes_total
> Topic.create!({:title => @qt, :description => [@qd], :kind => @q, :created_at=>@ca, :user_id=>@ui, :user_votes_total=>@uvt })
> end  

Herokuはこれを返します:

Question Load (1.8ms)  SELECT "questions".* FROM "questions" WHERE ("questions"."id" >= 0) ORDER BY "questions"."id" ASC LIMIT 1000
User Load (6.5ms)  SELECT "users".* FROM "users" WHERE "users"."id" = 3331 ORDER BY users.created_at DESC LIMIT 1  

そして、このDOH !:

WARNING: Can't mass-assign protected attributes: title, description, kind, created_at, user_id, user_votes_total

私のトピックモデルは次のようになります:

class Topic < ActiveRecord::Base
  attr_accessible :description, :title, :kind, :user_id, :tag_list,
              :subject, :image_attributes, :tags_attributes, :created_at,
              :user_votes_total
  validates :title, :presence => true,
                :length => { :minimum => 5 }
  validates :description, :presence => true
  validates :kind, :presence => true
  belongs_to :user
  has_many :adds
  default_scope order: 'topics.created_at DESC'

  votable_by :users
  acts_as_taggable

  has_one :image, :as => :parent, :dependent => :destroy
    accepts_nested_attributes_for :image, :allow_destroy => true
    after_create do
     self.create_image unless image
    end
  has_many :comments, :as => :commentable, :dependent => :destroy

  include PgSearch
  pg_search_scope :search, against: [:title, :description, :kind],
     using: {tsearch: {dictionary: "english"}}
end

関連情報を検索しましたが、Herokuがうまく機能していない理由がわかりません。誰かがこの問題に遭遇しましたか?

4

1 に答える 1

0

次のコマンドを実行することで、この問題を解決できました。

`heroku restart`

https://devcenter.heroku.com/articles/ps

于 2012-12-18T04:28:49.207 に答える