Por que você não pode ter uma chave estrangeira em uma associação polimórfica?

Por que você não pode ter uma chave estrangeira em uma associação polimórfica, como a representada abaixo como modelo do Rails?

class Comment < ActiveRecord::Base
  belongs_to :commentable, :polymorphic => true
end

class Article < ActiveRecord::Base
  has_many :comments, :as => :commentable
end

class Photo < ActiveRecord::Base
  has_many :comments, :as => :commentable
  #...
end

class Event < ActiveRecord::Base
  has_many :comments, :as => :commentable
end

questionAnswers(4)

yourAnswerToTheQuestion