正如我提出的问题,现在我可以轻松地在 rails 应用程序中使用 devise_invitable 模块。但是,很难迁移到 Angular js。我正在尝试使用带有 url '/users/invitation.json' 的 $http.post 来触发服务器端的邀请。
$scope.inviteUser = ->
$http.post('/users/invitation.json',
email: $scope.email
).success (data) ->
_log "successful"
日志文件显示
Started POST "/users/invitation.json" for 127.0.0.1 at 2014-10-24 03:48:49 +1100
Processing by Devise::InvitationsController#create as JSON
Parameters: {"email"=>"sample@mail.com", "invitation"=>{"email"=>"sample@mail.com"}}
User Load (0.3ms) SELECT "users".* FROM "users" WHERE "users"."id" = 1 ORDER BY "users"."id" ASC LIMIT 1
Completed 422 Unprocessable Entity in 3ms (Views: 0.1ms | ActiveRecord: 0.3ms)
我可以弄清楚问题可能出在凭证上。参数显然错过了
"authenticity_token"=>"MEAh9r7vD8cUxXQH9+qnjykHKV8OeC+fvuNW6Whsewg="
但不知道如何解决。在普通的 Rails 应用程序中,一切都很顺利。我可以将电子邮件发送到 user_invitation_path 以邀请新用户。而且我对 Angular js 真的很陌生,有人可以帮我吗?