问题标签 [friendly-id]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - Rails friendly_id 页面仍然可以通过记录 id 获得
我在我的 rails 应用程序中使用 friendly_id gem 来创建漂亮干净的 url。效果很好,但是该页面也可以通过 te 记录 id 获得。
例子:
我有一个“名字”作为蛞蝓的记录。该记录有 1 个 ID。
因此该页面可以从 2 个 url 获得:
domain.com/name
和
domain.com/1
我只想使用 domain.com/name,所以我不希望可以从 domain.com/1 访问该页面。
有谁知道如何做到这一点?
ruby-on-rails - FriendlyId 和参数的问题
我正在尝试将我的网址从whatever.com/users/1 更改为whatever.com/users/jamie.Surname 或whatever.com/users/jamie-Surname
我很想最终更改为whatever.com/jamie.surname 或whatever.com/jamie-surname,但我认为最好从简单开始。
所以我安装了friendly_id gem,从简单的开始我试着让它路由到我的名字;
但是,当我尝试访问该网址时,我收到了错误;
ActiveRecord::RecordNotFound in UsersController#show
找不到没有 ID 的用户
应用程序跟踪 | 框架跟踪 | 完整跟踪 app/controllers/users_controller.rb:22:in `show'
请求参数:{"id"=>"jamie"}
这一行是我的 users_controller 中抛出错误的方法
我似乎无法找到解决此问题的方法。
任何帮助或建议/推动正确方向将不胜感激。
ruby-on-rails-3 - 无法通过 rails 控制台(或通过我的应用程序)更新对象......但没有具体错误可帮助调试
这是我试图做的:
当我尝试在我的应用程序中执行此操作时(即使用编辑表单),我遇到了这个问题:
我似乎无法编辑我的对象的标题,这也相当于与我的对象关联的友好 id。
ruby-on-rails - friendly_id:可选择更新 slug
我想允许用户通过单击复选框来 更新 条目的 slug。
我知道函数 should_generate_new_friendly_id 吗? ,但不是在这种情况下如何使用它,因为它是在模型中定义的并且无法读取 params 属性。
感谢您的任何想法!
ruby-on-rails - 更改 Friendly_ID 序列号 Rails
开箱即用,当存在类似条目时,Friendly_ID 会将“--2”、“--3”... 添加到 slug 的末尾。
我知道我可以在哪里更改“sequence_separator”,但是在找到我称之为“sequencer”的东西时遇到了麻烦。我的帖子每年只会重复一次,所以我想在末尾添加年份而不是随机数。
更新 1 Yannick,感谢您为我指明正确的方向。对该方法进行了一些研究,并找到了文档和一个很好的问题来帮助我把它放在一起。
虽然这可行,但它看起来相当复杂和混乱。当我通过 Active Admin 添加记录(即将上传)时,它也不会生成 slug。我认为最好将记录 ID 留在 URL 中,并在末尾添加实际上不用于查找记录的文本。
ruby-on-rails - 如何让friendly_id gem 使用另一个模型的属性?
目前在我的消息表上使用friendly_id。消息访问如下:
我想这样使用它:
当我使用消息表中的“body”属性对其进行测试时,我的 gem 工作正常。发送了一条短消息“test”并尝试使用 site.com/messages/test 访问它,它工作正常。
但是我需要使用用户的用户名来做到这一点。我想知道是否有办法访问另一个模型属性,因为我的用户名存储在我的用户表中。我总是可以在我的消息表中创建一个用户名列并将他们的用户名保存在那里,但我不喜欢在我已经拥有另一个用户名列时拥有另一个用户名列的想法。
由于我的表是链接的,因此我可以使用他们的 sender_id 或 recipient_id 轻松找到消息发件人或收件人的用户名,因为这与他们在我的 users 表中的 ID 匹配。
有没有一种快速简便的方法来做我想做的事情,或者我必须求助于在我的消息表中创建一个用户名列?
亲切的问候
ruby-on-rails - 在模型中使用 FriendlyId 生成器
有没有办法从扩展 FriendlyId 的模型实例访问 FriendlyID slug 生成器?
然后将它传递给一个字符串以生成一个唯一的 slug?
ruby-on-rails-3 - Friendly_ID Ruby on Rails
即使在使用 slug 之后,URL 仍然显示 id 而不是标题。代码如下
index.html.erb
post_controller.rb
结尾
后模型
路线.rb
我希望链接是' localhost:8080/posts/this+is+the+title '而不是' localhost:8080/posts/2 '
ruby-on-rails - Friendly_id 范围问题。数字蛞蝓
我正在尝试使用友好 ID 创建更多自定义 url。但是,我想用于 slug 的列仍然是一个数字。我不想只为 slug 创建一个单独的列,因为它是相同的。
我有很多属于拍卖的。
拍卖有很多拍品(待售物品)。
A Lot有lot_number
,这是Auction独有的。不过,它在整个表格中并不是唯一的。这基本上只是在每次拍卖中订购批次的一种方式。
我的 URL 看起来像:/auctions/1/lots/21 (/auctions/:auction_id/lots/:id)
我希望它们是:/auctions/1/lots/1 (/auctions/:auction_id/lots/:lot_number )
我将以下内容添加到lot.rb:
它几乎可以工作。它向我显示了一个批号正确但拍卖错误的批次。
我在 Friendly ID 文档中阅读了有关范围的信息,这听起来很完美。我可以将拍卖范围限定在拍卖范围内……
所以我尝试了:
现在我看到以下错误:
为什么是 SQL WHERE lots.slug = 1
?不应该WHERE lots.auction_id = 1
吗?
我使用了错误的语法吗?不知道我哪里出错了。
任何帮助,将不胜感激。谢谢。
ruby-on-rails - 如何使用 FriendlyId、rails 显示路径
我的任务是能够在浏览栏中看到当前类别或产品的路径。
此时我只能看到这样的当前类别
本地主机:3000/类别/smalcinataji
但我想要这样
本地主机:3000/类别/atkritumu-parstrades-tehnika/smalcinataji
为了创建漂亮的 url,我使用了这个示例中名为 FriendlyId 的 gem http://railscasts.com/episodes/314-pretty-urls-with-friendlyid?view=asciicast
谢谢!