我很难确定如何根据data属性中的一个键/值对来排序列表.
<ul>
<li data="{name:'Foo', number: '1'}">
<h3>Foo</h3>
</li>
<li data="{name:'Bar', number: '2'}">
<h3>Bar</h3>
</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
这是jQuery.我正在设置元数据attr并访问它.所有这一切都很好.
jQuery.metadata.setType("attr", "data");
$(document).ready(function(){
// loop through each list item and get the metadata
$('ul li').each(function () {
console.log($(this).metadata());
// shows the following - Object {name="Foo", number="1"}
});
)};
Run Code Online (Sandbox Code Playgroud)
示例:我需要按名称升序排序.有人能指出我正确的方向吗?
编辑:
这是我用来触发排序的表单:
<form name="filterForm">
Sort:
<select name="sort" size="1">
<option value="nameAsc" <cfif URL.sort EQ 1>selected="selected"</cfif>>Name A to Z</option>
<option value="nameDesc" <cfif URL.sort EQ 2>selected="selected"</cfif>>Name Z to A</option>
<option value="numberAsc" <cfif URL.sort EQ 3>selected="selected"</cfif>>Number 1-10</option>
<option value="numberDesc" …Run Code Online (Sandbox Code Playgroud) 我正在使用此Rails指南创建一个范围,以便为某些控制器创建"/ admin"前缀.
所以我有一个名为Pages的控制器,我想通过"/ admin/pages"访问它.
scope "/admin" do
resources :pages
end
Run Code Online (Sandbox Code Playgroud)
这很好用,但仍然可以通过"/ pages"访问...我如何防止这种情况?(我正在使用Rails 3)
这是我的路线文件:
devise_for :users
scope "/admin" do
resources :pages
resources :contents
end
root :to => "index#index"
match ':controller(/:action(/:id(.:format)))'
Run Code Online (Sandbox Code Playgroud) 我有一个我为一个旧网站构建的rails应用程序,我从另一个cms转换(用非rails语言,呵呵).大多数旧页面使用routes.rb映射到新页面.但仍有一些404.
我是一个rails newb所以我问是否有任何先进的方法来处理404s.例如,如果我用我的旧语言编程,我会这样做:
有没有你知道的宝石/插件或教程可以处理这样的事情,如果它甚至可能的话.或者你能从高层次解释如何做到这一点吗?我不需要完整的代码示例,只需向正确的方向推进即可.
PS.这是一个使用单个内容模型的简单rails 3应用程序.
我第一次尝试使用JSON数据.我有一些使用jQuery的经验.
我发布到这个URL(tumblr api):jyoseph.com/api/read/json
我要做的是输出返回的json.到目前为止我所拥有的:
$(document).ready(function(){
$.getJSON("http://jyoseph.com/api/read/json?callback=?",
function(data) {
//console.log(data);
console.log(data.posts);
$.each(data.posts, function(i,posts){
var id = this.id;
var type = this.type;
var date = this.date;
var url = this.url;
var photo500 = this.photo-url-500;
$('ul').append('<li> ' +id+ ' - ' +type+ ' - ' +date+ ' - ' +url+ ' - ' +photo500+ ' - ' + ' </li>');
});
});
});
Run Code Online (Sandbox Code Playgroud)
请参阅我的jsbin帖子了解整个脚本:http://jsbin.com/utaju/edit
来自tumblr的一些键在其中有" - "连字符,这似乎导致了一个问题.正如你可以看到"photo-url-500"或其他"照片标题"导致脚本中断,它正在输出NaN.
在密钥名称中使用连字符有问题吗?或者我这样做是错的?
我有一个用 Coldfusion 构建的旧站点,一个用 Rails 构建的新站点。我想将旧 URL 重定向到新 URL。我不确定路线是否适合(我是菜鸟)。URL 将非常相似。这应该很容易,但我不确定最好的方法。
旧网址:
mysite.com/this-is-the-slug-right-here/
Run Code Online (Sandbox Code Playgroud)
新网址:
mysite.com/blog/this-is-the-slug-right-here
Run Code Online (Sandbox Code Playgroud)
这是问题,我有 3 个“内容类型”。旧站点 url 没有区分内容类型。新的 Rails 站点对每种内容类型都有一个控制器:博客、照片、移动照片。
所以在上面的例子中/blog/是控制器(内容类型),this-is-the-slug-right-here是内容的永久链接或 slug。我得到这样的:
@content = Content.where(:permalink => params[:id]).first
Run Code Online (Sandbox Code Playgroud)
我应该使用routes.rb,还是需要某种包罗万象的脚本?任何让我指向正确方向的帮助将不胜感激。
编辑以进一步澄清
这是一篇博文:http : //jyoseph.com/treadmill-desk-walk-this-way/
这个的新 URL 是/blog/treadmill-desk-walk-this-way因为它是博客的内容类型。
还有一张照片:http : //jyoseph.com/berries/
这个的新 URL 是/photos/berries因为它是照片的内容类型。
内容类型是内容模型上的一个属性,存储在属性中content_type。
这是我的 routes.rb 文件:
resources :contents
match 'mophoblog/:id', :to => 'mophoblog#show'
match 'photos/:id', :to => 'photos#show'
match 'blog/:id', :to => 'blog#show'
root :to => "index#index"
match ':controller(/:action(/:id(.:format)))' …Run Code Online (Sandbox Code Playgroud) 我正在开发一个rails 3应用程序,我希望暂时被所有不是来自我的IP地址的请求阻止.最好的方法是什么?
我想我可以在控制器级别做一些事情,但我是一个新手,并不确定最佳做法是什么.
我想向用户阅读一些文本,就像在Mirror API中可能的那样.这可能是通过Intent在Google Glass GDK中实现的吗?
我有一段时间在工作中获得可行的标记.我是Ruby/RoR的新手,我觉得有时候这些插件(虽然很棒)缺乏对不习惯在Rails中工作的人的基本实现指令.
我有一个简单的内容模型,我希望能够添加标签.当我保存表单时,没有任何反应.我尝试输出标签,没有任何显示(我已经进入rails控制台,没有).我的内容模型(表格)上是否需要其他属性(列)?我有一种感觉,我错过了一些非常基本的东西.
内容模型:
class Content < ActiveRecord::Base
acts_as_taggable
# I've also tried acts_as_taggable :tags
end
Run Code Online (Sandbox Code Playgroud)
在我的形式部分:
<p>
<%= f.label 'Tags' %><br />
<%= f.text_field :tag_list %>
</p>
Run Code Online (Sandbox Code Playgroud)
在我的show.html.erb中:
<p>
<strong>Tags</strong>:
<% for tag in @content.tags %>
<%= link_to tag.name, contents_path(:view =>'tag', :tag => tag.name) %>
<% end %>
</p>
Run Code Online (Sandbox Code Playgroud)
我希望有人能让我指出正确的方向.谢谢!
编辑
这是日志的链接,你可以看到它保存了tag_list.
我有一个Android应用程序开发在谷歌玻璃上运行.我用adb运行它.是否可以配置一个语音命令,以便我可以通过说"Ok GLASS"+"My Command"来触发它?
我有一个模板设置,我正在通过jQuery进行ajax调用.我传递了一个名为"method"的URL参数,然后通过每个方法执行<cfswitch>来确定要执行的代码块.
问题是,我不希望在ajax调用之外访问此页面.换句话说,如果有人只是在他们的浏览器中键入URL,我不希望模板运行.
有没有办法做到这一点?我想在.php中有一种方法可以告诉它是什么类型的请求.Coldfusion中是否存在这样的事情?还是有什么建议?
jquery ×3
google-gdk ×2
google-glass ×2
routes ×2
ajax ×1
android ×1
api ×1
coldfusion ×1
javascript ×1
json ×1
metadata ×1
routing ×1
scope ×1
sorting ×1
tumblr ×1
url ×1