Alexandre
59 posts
|
PessoALL,
eu tenho uma tabela em uma aplicação que estou convertendo para Rails chamada Nó.
No caso no rails foi criada como Nos
Quando gerei o Scaffold dessa tabela ele deu erro. Acho que tentou criar alguma coisa como No e ai acho que No é uma palavra reservada.
Alguma idéia?
|
|
|
Fernando Luizao
402 posts
|
Qual é o erro? O nome da tabela está com acento mesmo?
|
|
|
Alexandre
59 posts
|
O nome da tabela está sem acento.
|
|
|
Mereghost
844 posts
|
Tem como postar o erro?
|
|
|
Alexandre
59 posts
|
No meu controler eu tenho:
Erro:
NameError in Tb nosController#list
uninitialized constant TbNo
RAILS_ROOT: ./script/../config/..
Application Trace | Framework Trace | Full Trace
c:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:266:in `load_missing_constant’
c:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing’
c:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:464:in `const_missing’
c:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/inflector.rb:250:in `constantize’
c:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/core_ext/string/inflections.rb:148:in `constantize’
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.6/lib/action_controller/pagination.rb:201:in `paginator_and_collection_for’
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.6/lib/action_controller/pagination.rb:132:in `paginate_without_deprecation’
c:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:94:in `paginate’
C:/Documents and Settings/Alex/Meus documentos/projetos/powercontrack/app/controllers/tb_nos_controller.rb:13:in `list’
c:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:266:in `load_missing_constant’
c:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing’
c:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:464:in `const_missing’
c:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/inflector.rb:250:in `constantize’
c:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/core_ext/string/inflections.rb:148:in `constantize’
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.6/lib/action_controller/pagination.rb:201:in `paginator_and_collection_for’
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.6/lib/action_controller/pagination.rb:132:in `paginate_without_deprecation’
c:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:94:in `paginate’
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.6/lib/action_controller/base.rb:1101:in `send’
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.6/lib/action_controller/base.rb:1101:in `perform_action_without_filters’
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.6/lib/action_controller/filters.rb:696:in `call_filters’
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.6/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark’
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.6/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue’
c:/ruby/lib/ruby/1.8/benchmark.rb:293:in `measure’
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.6/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue’
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.6/lib/action_controller/rescue.rb:83:in `perform_action’
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.6/lib/action_controller/base.rb:435:in `send’
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.6/lib/action_controller/base.rb:435:in `process_without_filters’
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.6/lib/action_controller/filters.rb:684:in `process_without_session_management_support’
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.6/lib/action_controller/session_management.rb:114:in `process’
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.6/lib/action_controller/base.rb:334:in `process’
c:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.6/lib/dispatcher.rb:41:in `dispatch’
c:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.6/lib/webrick_server.rb:113:in `handle_dispatch’
c:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.6/lib/webrick_server.rb:79:in `service’
c:/ruby/lib/ruby/1.8/webrick/httpserver.rb:104:in `service’
c:/ruby/lib/ruby/1.8/webrick/httpserver.rb:65:in `run’
c:/ruby/lib/ruby/1.8/webrick/server.rb:173:in `start_thread’
c:/ruby/lib/ruby/1.8/webrick/server.rb:162:in `start’
c:/ruby/lib/ruby/1.8/webrick/server.rb:162:in `start_thread’
c:/ruby/lib/ruby/1.8/webrick/server.rb:95:in `start’
c:/ruby/lib/ruby/1.8/webrick/server.rb:92:in `each’
c:/ruby/lib/ruby/1.8/webrick/server.rb:92:in `start’
c:/ruby/lib/ruby/1.8/webrick/server.rb:23:in `start’
c:/ruby/lib/ruby/1.8/webrick/server.rb:82:in `start’
c:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.6/lib/webrick_server.rb:63:in `dispatch’
c:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.6/lib/commands/servers/webrick.rb:59
c:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require’
c:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `require’
c:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require’
c:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in’
c:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require’
c:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.6/lib/commands/server.rb:39
c:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require’
c:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `require’
script/server:3
c:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:266:in `load_missing_constant’
c:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:452:in `const_missing’
c:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:464:in `const_missing’
c:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/inflector.rb:250:in `constantize’
c:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/core_ext/string/inflections.rb:148:in `constantize’
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.6/lib/action_controller/pagination.rb:201:in `paginator_and_collection_for’
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.6/lib/action_controller/pagination.rb:132:in `paginate_without_deprecation’
c:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/deprecation.rb:94:in `paginate’
C:/Documents and Settings/Alex/Meus documentos/projetos/powercontrack/app/controllers/tb_nos_controller.rb:13:in `list’
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.6/lib/action_controller/base.rb:1101:in `send’
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.6/lib/action_controller/base.rb:1101:in `perform_action_without_filters’
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.6/lib/action_controller/filters.rb:696:in `call_filters’
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.6/lib/action_controller/filters.rb:688:in `perform_action_without_benchmark’
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.6/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue’
c:/ruby/lib/ruby/1.8/benchmark.rb:293:in `measure’
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.6/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue’
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.6/lib/action_controller/rescue.rb:83:in `perform_action’
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.6/lib/action_controller/base.rb:435:in `send’
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.6/lib/action_controller/base.rb:435:in `process_without_filters’
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.6/lib/action_controller/filters.rb:684:in `process_without_session_management_support’
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.6/lib/action_controller/session_management.rb:114:in `process’
c:/ruby/lib/ruby/gems/1.8/gems/actionpack-1.13.6/lib/action_controller/base.rb:334:in `process’
c:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.6/lib/dispatcher.rb:41:in `dispatch’
c:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.6/lib/webrick_server.rb:113:in `handle_dispatch’
c:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.6/lib/webrick_server.rb:79:in `service’
c:/ruby/lib/ruby/1.8/webrick/httpserver.rb:104:in `service’
c:/ruby/lib/ruby/1.8/webrick/httpserver.rb:65:in `run’
c:/ruby/lib/ruby/1.8/webrick/server.rb:173:in `start_thread’
c:/ruby/lib/ruby/1.8/webrick/server.rb:162:in `start’
c:/ruby/lib/ruby/1.8/webrick/server.rb:162:in `start_thread’
c:/ruby/lib/ruby/1.8/webrick/server.rb:95:in `start’
c:/ruby/lib/ruby/1.8/webrick/server.rb:92:in `each’
c:/ruby/lib/ruby/1.8/webrick/server.rb:92:in `start’
c:/ruby/lib/ruby/1.8/webrick/server.rb:23:in `start’
c:/ruby/lib/ruby/1.8/webrick/server.rb:82:in `start’
c:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.6/lib/webrick_server.rb:63:in `dispatch’
c:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.6/lib/commands/servers/webrick.rb:59
c:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require’
c:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `require’
c:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require’
c:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:342:in `new_constants_in’
c:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.4.4/lib/active_support/dependencies.rb:495:in `require’
c:/ruby/lib/ruby/gems/1.8/gems/rails-1.2.6/lib/commands/server.rb:39
c:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require’
c:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `require’
script/server:3
Request
Parameters: None
Show session dump
flash: !map:ActionController::Flash::FlashHash {}
Response
Headers: {"cookie"=>[], “Cache-Control”=>"no-cache"}
|
|
|
Shairon Toledo
1291 posts
|
“urubuserva” esse código
Isso acontece muito no Rails. Quando o symbolo é utilizado para representar uma classe, o símbolo é convertido em string, depois é “camelizado” para o nome da classe, após isso o nome(string) será convertido em uma constante(Module.const_set).
Resumindo vc não tem uma classe ActiveRecord::Base com o nome de TbNo.
|
|
|
Alexandre
59 posts
|
Sharion, então o Rails não está conseguindo fazer a pluralização, pois eu tenho a classe de dados criada TnNos.
Modifiquei o código e coloquei
o tb_noss, com 2 s e ai funcionou. Acho que nesse caso, o melhor seria desabilitar a pluralização, o que acham?
|
|
|
Urubatan
145 posts
|
Só pra incomodar, espero que o prefixo Tb não signifique tabela.
|
|
|
Urubatan
145 posts
|
E respondendo ao post, sugiro deixar de utilizar o paginate padrão, ele é desencorajado (pelo menos por mim, acredito que por quase todos), utilize por exemplo o will_paginate
onde tu iria usar um código parecido com:
TbNos.paginate
Por tanto não tendo nenhum problema parecido com este.
|
|
|
Alexandre
59 posts
|
Urubatan, de fato TB significa tabela. Herença do modelo já existente. Estamos apenas migrando a aplicação e Access para Rails. Alguma implicação em usar TB?
No momento estamos preocupados apenas com as funcionalidades do sistemas, para que funcione, depois iremos fazer o refino da programação e interface.
Esse código ai foi gerado pelo Scaffold..
|
|
|
Urubatan
145 posts
|
ja que tem que migrar e isto foi gerado pelo scaffold, comece com o Rails 2.1 que acabou de sair, este é o código gerado pelo scaffold do rails 1.x :D
se quiser gerar coisas a partir do banco no rails 2.1 tenta com o meu plugin (que agora virou gem :D ): https://github.com/urubatan/mydry/tree
depois de dentro da APP:
e altera os nomes dos models para algo que signifique o que eles vão fazer no sistema, e usa os comandos do AR para configurar o nome da tabela de cada model, mas programe OO (Orientado a objetos) e não OT (Orientado a tabelas)
Quanto a usar TB comp prefixo, significando tabela, sim tenho muita coisa contra, Objetos/Classes/Entidades não são tabelas, mapeamento O/R é apenas uma forma de salvar o estado dos objetos …
leia este post que publiquei hoje no meu blog: http://www.urubatan.com.br/orientacao-a-objetos-e-facil-as-pessoas-e-que-complicam/
|