Closed leosmeira closed 11 years ago
Eu uso um fork, mas sem alterações significativas. Qual o problema e o que aparece no log por favor?
Quando clico em finalizar a compra no carrinho de compra, aparece este erro:
NoMethodError in Spree::OrdersController#update
undefined method `payment_profiles_supported?' for nil:NilClass
Rails.root: /mnt/hgfs/Projetos/e-commerce/Gerlu/codigo_site Application Trace http://192.168.67.191:3000/cart# | Framework Tracehttp://192.168.67.191:3000/cart# | Full Trace http://192.168.67.191:3000/cart#
spree_core (1.3.3) app/models/spree/order.rb:167:in each' spree_core (1.3.3) app/models/spree/order.rb:167:in
any?'
spree_core (1.3.3) app/models/spree/order.rb:167:in confirmation_required?' spree_core (1.3.3) app/models/spree/order.rb:26:in
block (2 levels)
in class:Order'
spree_core (1.3.3) app/models/spree/order/checkout.rb:160:in call' spree_core (1.3.3) app/models/spree/order/checkout.rb:160:in
block in
checkout_steps'
spree_core (1.3.3) app/models/spree/order/checkout.rb:158:in each' spree_core (1.3.3) app/models/spree/order/checkout.rb:158:in
checkout_steps'
spree_core (1.3.3) app/models/spree/order.rb:506:in has_step?' spree_core (1.3.3) app/models/spree/order.rb:533:in
has_available_shipment'
2013/8/29 Giulliano Bueno notifications@github.com
Eu uso um fork, mas sem alterações significativas. Qual o problema e o que aparece no log por favor?
— Reply to this email directly or view it on GitHubhttps://github.com/angelim/spree_cielo/issues/5#issuecomment-23494691 .
@giubueno,
Você tá usando essa gem no spree 1.3.3? Eu não tenho idéia de como está o código hoje em dia, então fica difícil ajudar o @leosmeira. Parece que os payments dele estão indo sem um payment_method
quando vai para a confirmação. Será que é algum problema de validação que não está permitindo atribuir o payment_method ao payment?
Este erro acima foi um problema de configuração e sessão aberta. Favor desconsiderar.
O erro que está ocorrendo no spree_cielo do fork do giubueno é o seguinte:
ActiveModel::MassAssignmentSecurity::Error in Spree::CheckoutController#update
Can't mass-assign protected attributes: order_id, cc_type, instalments
Application Trace | Framework Trace | Full Trace
activemodel (3.2.14) lib/active_model/mass_assignment_security/sanitizer.rb:48:in `process_removed_attributes'
activemodel (3.2.14) lib/active_model/mass_assignment_security/sanitizer.rb:20:in `debug_protected_attribute_removal'
activemodel (3.2.14) lib/active_model/mass_assignment_security/sanitizer.rb:12:in `sanitize'
activemodel (3.2.14) lib/active_model/mass_assignment_security.rb:230:in `sanitize_for_mass_assignment'
activerecord (3.2.14) lib/active_record/attribute_assignment.rb:75:in `assign_attributes'
activerecord (3.2.14) lib/active_record/base.rb:498:in `initialize'
spree_core (1.3.3) app/models/spree/payment.rb:92:in `new'
spree_core (1.3.3) app/models/spree/payment.rb:92:in `build_source'
Parameters:
{"utf8"=>"✓",
"_method"=>"put",
"authenticity_token"=>"LaForCsMbsyXjy12rCh+6x4GU4dx1u4D02ZhQ/h1VUs=",
"order"=>{"payments_attributes"=>[{"payment_method_id"=>"10",
"source_attributes"=>{"order_id"=>"15",
"cc_type"=>"visa",
"instalments"=>"1"},
"amount"=>#<BigDecimal:d885dd0,
'0.10233E4',
18(36)>}]},
"state"=>"payment"}
Eu tenho uma sugestão para todos, que ao modificar/testar o spree_cielo para uma determinada versão do Spree gerem também um branche para a versão. Assim o código ficará mais limpo e fácil de compartilhar.
Ex.: 1-2-stable 1-3-stable 2-0-stable 2-1-stable
A verdade é que isso aqui não tá mais sendo atualizado de qualquer forma, Leo. O pessoal tá usando de seus próprios forks e não está submetendo pull requests pra esse repo. Eu tô sem tempo para estudar as novas versões do spree e reimplementar decentemente.
O branch 1.1.3 tem uma mudança bem pequena que fazia funcionar para aquela versão, mas já estava bem longe da implementação correta. O fork do Giu realmente tá sem order_id, cc_type, instalments
da lista de accessible. Eles já estavam assim no branch 1.1.3 aqui.
Fala pessoal, desculpe, eu realmente estou usando umas versões espalhadas e não atualizei meu fork. Vou refazer esse fork colocando as adaptações que fiz. Eu já tenho umas duas ou três lojas em produção com versões alteradas, mas todas elas são bem modificadas com o uso inclusive do webservice da Cielo.
Então atualize o seu Fork e crie os branches para as versões que você já usou do Spree, já que o seu código é mais atualizado.
Obrigado pela ajuda....
Em 30 de agosto de 2013 17:51, Giulliano Bueno notifications@github.comescreveu:
Fala pessoal, desculpe, eu realmente estou usando umas versões espalhadas e não atualizei meu fork. Vou refazer esse fork colocando as adaptações que fiz. Eu já tenho umas duas ou três lojas em produção com versões alteradas, mas todas elas são bem modificadas com o uso inclusive do webservice da Cielo.
— Reply to this email directly or view it on GitHubhttps://github.com/angelim/spree_cielo/issues/5#issuecomment-23588488 .
Bom dia, eu consegui fazer as devidas alterações para o correto funcionamento no spree 1.3.3.
Obrigado pela atenção de todos.
alguém já conseguiu colocar para funcionar no Spree 1.3.3 ?