InPlaceEditor problem z authenticity_token

Witam,

mam taki oto kod:

<script type="text/javascript"> var auth_token = $$('input[name=authenticity_token]')[0].value; new Ajax.InPlaceEditor('email', '/update', { externalControl: 'editEmail', externalControlOnly:true, ajaxOptions: { method: 'put', parameters: { authenticity_token: auth_token } } }); </script>
no i nie wysyła się ten token, właściwie to co bym nie podał w parameters to nic się nie wysyła.
Może jednak jakoś inaczej trzeba tutaj przekazywać te parametry?

Wersja RoR?

2.1

A czemu nie chcesz zrobić in_place_editora pluginem specjalnie dla Railsów 2.0 (działa pod 2.1), który właśnie załatwia problemy tokenów?

Jako obejście możesz w kontrolerze wyłączyć dla konkretnych akcji (bo lepiej nie robić tego dla całego kontrolera) request_forgery_protection, to powinno rozwiązać Twój problem.

A najlepiej zobacz kod “oryginału”. Bodajże Benefi.pl ma in_place_editora i jest w RoR 2.1, więc zobacz jak tam jest to rozwiązane.

Udało się :slight_smile:

new Ajax.InPlaceEditor('email', '/update', { externalControl: 'editEmail', externalControlOnly:true, callback: function(form, value) { auth_token = $$('input[name=authenticity_token]')[0].value; return 'authenticity_token=' + auth_token + '&value=' + escape(value); }, ajaxOptions: { method: 'put' } });