如何为我的应用程序创建Twitter样式URL - 使用现有应用程序或应用程序重新设计 - Ruby on Rails

时间:2010-04-30 04:59:20

标签: ruby-on-rails ruby routing routes

我开发了一个类似的博客应用程序,我试图让其他用户利用(免费,主要是家庭)。我想知道我设置的身份验证是否允许这样的事情。这是场景。

目前,该应用程序允许用户注册帐户,当他们这样做时,他们可以创建博客帖子并通过标签组织这些帖子。应用程序不公开显示数据(换句话说,您必须登录才能看到任何内容)。要获得访问权限,您必须创建一个帐户,即使在您执行此操作后,也无法看到其他人的信息,因为应用程序使用current_user方法过滤并显示在/posts/index.html.erb页面中。如果用户只想博客并与自己分享,而不是我真正想要的东西,那就太棒了。

我的问题有两个部分(希望我不会因为没有将这些问题分成两个问题而让任何人生气)

  1. 特定用户数据是否可以在www.myapplication.com/user上生效而无需将所有内容移至/user/show.html.erb文件?
  2. 是否可以将某些信息(生活在URL中)公开,但仍然需要登录才能创建和销毁操作。
  3. 基本上,就像推特一样。我只是好奇,如果我可以从我的位置(使用跨控制器的current_user方法显示在/posts/index.html.erb中)到达我想要的位置。我担心的是我必须重新设计应用程序,以便用户数据位于/user/show.html.erb页面。

    思想?

    更新: 我正在使用Clearance for authentication by Thoughtbot。我想知道我是否可以在vendored gem路径中设置一些东西来表示/posts/index.html.erb代码作为/ user / id代码并用用户名替换id。

1 个答案:

答案 0 :(得分:1)

对于你的第一个问题,这肯定是可行的。您只需设置一条路线即可完成此操作。以下是您可以向我们提供的一个示例:

http://marcada.ms/2010/02/twitter-like-urls-for-user-accounts-in-ruby-on-rails/

对于第二个问题,我对Clearance不熟悉,但这是一种相当普遍的做法。基本上在您的视图中,您检查当前登录的用户是否与帖子作者相同。如果是,则显示链接。

相关问题