我正在使用Rails 4(api)& amp;创建一个简单的博客应用程序。 Angularjs帮助学习Angularjs。我已经花了两天时间让我的帖子模型与Angularjs沟通。看起来我试图将帖子与用户关联起来(使用Devise)。
我知道,当我继续使用此应用程序时,我将使用外键和所以我很乐意听到其他人使用rails& amp; angularjs。我还尝试将Angularjs设置为尽可能接近地模仿Rails。
如何使用Angularjs& amp;导轨吗
你如何获得Devise助手,例如current_user
& user_signed_in?
在Angularjs模板中工作?
提前谢谢。
如果您需要,我可以添加更多详细信息。我真的不知道去哪里(我是Rails& Angularjs的新手)
答案 0 :(得分:1)
你如何获得Devise助手,例如current_user& user_signed_in?在Angularjs模板中工作?
简单的答案是,你没有。关于这个问题可能会有很多关于哲学的争论,但基本上javascript是不安全的,因为用户可以在浏览器中查看所有内容。
如果要将帖子与用户关联,最好在rails中的控制器级别执行此操作。使用current_user
设置user_id
上的Post
字段(或您希望将其关联的任何方式)。
我没有在Angular应用程序中添加任何“安全”功能。
以下是我在我的一个应用程序中执行此操作的示例,其中我将用户组织与旅程相关联。
def create
@journey = Journey.new(params[:journey])
@journey.organisation = current_user.organisation
if @journey.save
render json: @journey
else
head :error
end
end
哦,同样在你的Api :: PostsController中,你需要致电before_filter :authenticate_user!
才能使用current_user
答案 1 :(得分:0)
这两个存储库就是一个很好的例子:
此存储库包含一个完整的RESTful rails-api以及一个干净的文档,可以引导开发人员完成所有构建步骤。如果您希望从rails上的ruby开始,这个存储库对您来说是一个很好的资源。
<强> AngularJS front-end for the above api 强>
此存储库包含一个完整的RESTful AngularJs Web应用程序以及一个干净的文档,可以引导开发人员完成所有构建步骤。如果您希望从AngularJs开始,这个存储库对您来说是一个很好的资源。