草庐IT

ruby-on-rails - Friendly_id 不为旧记录创建 slug

我刚刚将Friendly_idgem添加到我的Rails项目中,希望不使用数据库ID并创建一个slug,但我似乎无法为旧记录创建slug。我的模型看起来像这样。classMapping然后我运行Model.find_each(&:save)但它一直吐出nil结果。我试过完全注释掉should_generate_new_friendly_id但没有成功。有人看到我在这里做错了什么吗?编辑我回滚了我的数据库并重写了我的迁移,这似乎已经解决了这个问题。 最佳答案 如果有人发现这个6年前的问题:没有“doandend”block:find_

ruby-on-rails - friendly_id slug 在更新时没有改变

我正在使用friendly_id5.0.0.rc1,还有active_admin。除了在active_admin中更新记录的slug属性/列没有做任何事情(它保持不变)之外,一切似乎都按预期完美运行我在使用控制台时发现了相同的行为:p=Post.firstp.slug#=>'test'p.slug='another-test'p.save#=>truep.slug#=>'test我的配置:FriendlyId.defaultsdo|config|config.use:reservedconfig.reserved_words=%w(adminneweditindexsessionuse

ruby-on-rails - ruby rails : Use slug instead of id on resource routes

因此,我正在寻找一种解决方案来帮助我使用Rails资源实现以下目标:/admin/articles/:slug/edit相对于/admin/articles/:id/edit我正在寻找Railsresourceroutes而不是其他类型的路线。只是想知道这是否可能。如果是这样,如何? 最佳答案 #config/routes.rbresources:articles,param::slug在终端中:$rakeroutes...articleGET/articles/:slug(.:format)articles#show...

ruby - 减少 Heroku 编译的 Slug 大小

我刚刚在bamboo-ree-1.8.7堆栈下将我的应用程序上的Rails更新到v2.3.6,编译后的slug大小已经增长到40.5Mb!在最后一次gitpush之前,slug大小约为20Mb,并且使用的是railsv2.3.5。是不是因为我的slug安装了两个rails版本?可能我遗漏了一些东西,但我没有在我的应用程序中添加任何特殊代码/文件来将slug大小增加~20Mb。你能告诉我如何减小slug的大小吗?任何帮助将不胜感激。非常感谢您。 最佳答案 一个有用的方法是将.slugignore文件添加到项目的根目录,以告诉Herok

ruby-on-rails - Heroku Rails 3.1 应用程序 - 在本地编译 Assets 与在 slug 编译期间编译 Assets

我在支持Assets管道的HerokuCedar堆栈上运行Rails3.1应用程序。英雄联盟lists3ways编译Assets在本地编译Assets。在slug编译期间编译Assets。在运行时编译Assets。显然#3不利于性能,Heroku文档也建议不要使用它。但我不确定#1和#2哪个更好。#1要求您运行rakeassets:precompile并将您的public/assets文件夹包含在git中。您的slug会更大,但我认为部署站点的停机时间会更短。但更大的slug尺寸意味着应用程序启动更慢,所以也许这是一个洗礼。#2由于预编译是在Heroku端完成的,因此部署更新需要更长的

Ruby 帖子标题 slug

我应该如何将帖子标题转换为Ruby中的slug?标题可以有任何字符,但我只希望slug允许[a-z0-9-_](它应该允许任何其他字符吗?)。所以基本上:小写所有字母将空格转换为连字符删除多余的字符 最佳答案 这是Rails吗?(适用于Sinatra)string.parameterize就是这样。有关更复杂的重击,请参阅ActsAsUrl.它可以执行以下操作:"rock&roll".to_url=>"rock-and-roll""$12worthofRubypower".to_url=>"12-dollars-worth-of-r

javascript - 这个三元运算符有什么问题?

我有一个对象menuNames,它应该维护一个菜单项列表。如果menuNames已经有slug,增加值,如果它不包含slug,设置值等于1。我这样做是为了跟踪唯一名称。我想以这样的方式结束:menuNames:{home:1,products:10,contact:1}这行不通(这将包含在遍历每个slug的循环中):menuNames[slug]=(menuNames.hasOwnProperty(slug)?menuNames[slug]++:1);//thissetseveryvalueto1但这确实有效(这将包含在遍历每个slug的循环中):if(menuNames.hasOwn

javascript - 使用 JavaScript 或 jQuery 解析 URL

好吧,假设我有一个URLexample.com/hello/world/20111020(带或不带尾部斜杠)。我想做的是从url域example.com中删除。然后将helloworld20111020分解成一个数组。但我的另一个问题是。有时URL没有/hello/world/20111020或只有/hello/所以我需要首先确定example.com之后是否有任何东西,如果没有,那么什么都不做,因为显然没有任何东西可以使用。但是,如果每个/我需要按顺序将其添加到此数组中。所以我可以使用array[0]并知道它是hello。几天前我尝试了一些东西,但遇到了尾部斜杠的问题,它一直在破坏脚

javascript - 从标题创建 Slug?

我已准备好从标题创建slug的一切,但有一个问题。我的RegEx将空格替换为连字符。但是,当用户键入“Hithere”(多个空格)时,slug最终会变成“Hi-----there”。什么时候真的应该是“你好”。我是否应该创建正则表达式,使其仅在两边有字符时才替换空格?或者有更简单的方法吗? 最佳答案 我用这个:yourslug.replace(/\W+/g,'-')这会将所有出现的一个或多个非字母数字字符替换为单个破折号。 关于javascript-从标题创建Slug?,我们在Stack

javascript - Angular UI-Router 动态路由基于来自 API Ajax 调用的 slug。基于 slug 加载 View

服务器数据库中可通过API访问的slug示例:{slug:"john-smith",type:"user"}{slug:"microsoft-technologies",type:"company"}场景1:用户View和Controller:http://localhost/john-smith.state('user',{url:'/:user',templateUrl:'partial-user.html',controller:'userCtrl'})场景2:公司View和Controller:http://localhost/microsoft-technologies.st