小编Tri*_*ote的帖子

Backbone.js多个Model子类的集合

我有一个REST Json API,它返回一个列表"logbooks".有许多类型的日志可以实现不同但相似的行为.数据库层上的服务器端实现是一种单表继承,因此日志的每个JSON表示都包含其"类型":

[
  {"type": "ULM", "name": "My uml logbook", ... , specific_uml_logbook_attr: ...},
  {"type": "Plane", "name": "My plane logbook", ... , specific_plane_logbook_attr: ...}
]
Run Code Online (Sandbox Code Playgroud)

我想在客户端复制这个服务器模型,所以我有一个基Logbook类和多个日志子类:

class Logbook extends Backbone.Model

class UmlLogbook extends Logbook

class PlaneLogbook extends Logbook

...
Run Code Online (Sandbox Code Playgroud)

Backbone.Collection是一组Logbook用于查询JSON API的模型:

class LogbookCollection extends Backbone.Collection
  model: Logbook
  url: "/api/logbooks"
Run Code Online (Sandbox Code Playgroud)

当我获取日志集合时,有没有办法将每个元素Logbook转换为相应的子类(基于JSON"类型"属性)?

inheritance json coffeescript backbone.js

63
推荐指数
2
解决办法
2万
查看次数

带轨道的奇怪的I18n日期输出

我的Ruby On Rails 3应用程序中的日期翻译有一个奇怪的问题,我真的不明白为什么......

这是我en.ymlfr.yml:

fr:
  date:
    formats:
      default: "%d/%m/%Y"
      short: "%e %b"
      long: "%e %B %Y" 
  time:
    formats:
      default: "%d %B %Y %H:%M:%S"
      short: "%d %b %H:%M"
      long: "%A %d %B %Y %H:%M"
    am: 'am'
    pm: 'pm'



en:
  date:
    formats:
      default: "%Y-%m-%d"
      long: "%B %d, %Y"
      short: "%b %d"
  time:
    am: am
    formats:
      default: ! '%a, %d %b %Y %H:%M:%S %z'
      long: ! '%B %d, %Y %H:%M'
      short: ! '%d %b %H:%M'
    pm: pm
Run Code Online (Sandbox Code Playgroud)

这不是特定的视图,而是例如我的观点之一: …

localization ruby-on-rails date internationalization ruby-on-rails-3

8
推荐指数
1
解决办法
4628
查看次数

Ruby On Rails CMS受DjangoCMS的启发

我需要为几个相当大的网站选择和定制Ruby CMS(最好基于Ruby On Rails).我知道Radiant CMS,Refinery CMS并且Locomotive是rails中最着名的CMS,但它们都不包括我需要的所有功能.以下是这些CMS中(有时)缺少的主要非平凡功能:


  • 页面主要内容:每个页面主要内容(每个菜单项)可以显示:
    • "类别"的文章列表(如博客)
    • 从类别中提取的单个文章
    • 使用WYSIMYM编辑器创建的单个页面(例如,这是RefineryCMS的基本功能)
    • 链接(库中的外部或内部资源,如上载的文档)
    • 需要特定开发的自定义页面(订阅表单,...经典rails控制器)

  • 模板管理:
    • 我应该能够跨多个页面重用"模板".例如,模板可以是具有几个"占位符"的布局,例如一个"主占位符"(将包含页面的主要内容)和"侧边栏占位符".当管理员在管理界面中构建新页面时,他应该能够选择他将使用的模板.
    • 模板的占位符就像页面一样,可以在admin中编辑(例如,sidebard的内容).当然,使用此模板的所有页面都会更新.

RQ:这个模板/占位符功能部分存在于DjangoCMS中


  • "插件":占位符的内容应该填充我可以在多个模板上重用的自定义插件.例如,我可以编写一个Twitter插件,显示用户的最后10条推文(插件的参数).所以在模板编辑页面中,我可以在"side placeholder"中添加这个插件.

插件的概念存在于例如DjangoCMS中


  • WYSIWYM/WYSIWYG编辑器:在使用WYSIWYM编辑器创建的文章或页面的内容中,我应该能够
    • 从librairy插入指向内部资源的链接,例如之前上载的PDF文档
    • 从内部图书馆插入内部图像
    • 插入图像的幻灯片
    • 从Youtube插入视频

  • 站点:可以在不同域上的不同站点的页面上显示诸如文章列表(文章类别),文档之类的资源.Everythings通过简单的管理站点进行管理

  • 多语种(文章/页面可以翻译)

你会选择什么?为什么?

我应该从头开始重建自定义解决方案吗?

有没有人实现的这些功能之一(Radiant CMS,Refinery CMS,或Locomotive为实例)?

感谢您对此的任何帮助或建议!

ruby-on-rails content-management-system django-cms

6
推荐指数
1
解决办法
1474
查看次数

Backbone.js和jQueryMobile路由没有黑客或其他路由器

我正在使用backbone.js(0.5.3)和JQueryMobile(1.0 beta 2).我知道在一起使用这些库时存在路由冲突,我想知道是否有使用它们的解决方案:

我的问题与本文中描述的问题非常相似:jquery-mobile backbone.js路由

当我发出请求时,render相应骨干视图的骨干代码会在新的jquery页面完全加载之前被触发.我正在尝试在$(".ui-page-active")DOM元素中呈现我生成的html代码,以定位由jQueryMobile(或"激活"的页面)生成的页面:

MyView = Backbone.View.extend({
  el: $(".ui-page-active")
  render: function(){
    console.log(el)
  }
});
Run Code Online (Sandbox Code Playgroud)

但是el调用render方法时该属性为空,因为jquery mobile尚未呈现dom ...

谢谢你的帮助 !

更新

Addy Osmani似乎有我的问题的答案:)但它将是他的(伟大的)教程的下一部分:http: //msdn.microsoft.com/en-us/scriptjunkie/hh377172.aspx

javascript jquery jquery-mobile backbone.js

5
推荐指数
1
解决办法
8685
查看次数