Para remover um modelo criado no Rails:
rails destroy model model_name
Se a migration criada para este model foi adicionada ao banco de dados, criando uma tabela para esse modelo, para remover essas alterações:
bundle exec rake db:rollback
Para remover um modelo criado no Rails:
rails destroy model model_name
Se a migration criada para este model foi adicionada ao banco de dados, criando uma tabela para esse modelo, para remover essas alterações:
bundle exec rake db:rollback
No Rails 4+, a página inicial da aplicação “Welcome aboard” não fica mais em public/index.html (como até no Rails 3), e sim está localizada em uma gem. Ao acessar a aplicação no browser, no log do server dá para saber onde está o arquivo index.html. No meu caso está em:
/home/user/.rvm/gems/ruby-2.2.1/gems/railties-4.1.8/lib/rails/templates/rails/welcome/index.html.erb
Na maioria dos casos, não precisamos reiniciar o servidor Rails para que as mudanças sejam recarregadas enquanto estamos desenvolvendo a aplicação. Porém, toda vez que adicionamos uma nova gem ou modificamos o arquivo config/application.rb, precisamos reiniciar o servidor para que o Rails carregue essas alterações.
A definição de Scope no Rais até a versão 3 era da seguinte maneira:
class Class < AtiveRecord::Base
scope :most_recent, order("created_at DESC")
end
No Rails 4, a definição de Scope passou a ser da seguinte forma:
class Class < AtiveRecord::Base
scope :most_recent, -> {order("created_at DESC")}
end
Para que um atributo de um modelo fosse acessível através de um formulário no Rails, bastava adicioná-lo à lista de atributos acessíveis da classe de modelo, em app/models/class.rb
class Class < ActiveRecord::Base
attr_accessible :atribute1, :atribute2
end
A partir de Rails 4, o attr_accessible foi substituído pelo conceito de Strong Parameters.
Para dizer à classe modelo que um atributo é acessível por meio de um formulário, basta adicioná-lo como atributo permitido no método class.params do controller respectivo da classe modelo, em app/controllers/”name_table_db”_controller.rb:
private
def class_params
params.require(:class).permit(:atribute1, :atribute2)
end
end