小编Chr*_*ssl的帖子

在有效的XHTML中实现制表位的最佳方法是什么?

为了解释想象一个简单的地址.写在带有换行符的HTML段落中,它会这样:

Street: Example Street 1
City: Vienna
Zip Code: 1010
Country: Austria
Run Code Online (Sandbox Code Playgroud)

大部分时间都完全可以,但有时我必须达到以下输出:

Street:   Example Street 1
City:     Vienna
Zip Code: 1010
Country:  Austria
Run Code Online (Sandbox Code Playgroud)

到目前为止我的想法:

  1. 应该是有效的XHTML并在所有主流浏览器中正常工作或降级
  2. 强烈优选以语义正确的方式使用标签
  3. 由于第二点:我希望有一个比表更好的解决方案
  4. 问题不仅限于地址 - 在其他情况下也会有用

你如何实现这个输出(使用HTML和/或CSS)?

html css

9
推荐指数
2
解决办法
6968
查看次数

软件开发中的非确定性有限状态机?

最近我一直在考虑有限状态机(FSM),以及如何在软件中实现它们(编程语言并不重要).

我的理解是确定性状态机被广泛使用(解析/词法分析器,编译器等),但是非确定性状态机的问题是什么?

我知道可以所有非确定性状态机转换为确定性状态机(甚至是以编程方式).那不是我的观点.我还想象非确定性状态机实现起来要复杂得多.

总之,它使任何意义上实现非确定性状态机?有什么特别的应用我不知道吗?这可能是什么原因?也许优化和专业的非确定性状态机更快?

language-agnostic algorithm math state-machine

8
推荐指数
2
解决办法
4216
查看次数

如何将嵌套集中的所有记录呈现为真正的html树

我正在使用awesome_nested_set我的Rails项目中的插件.我有两个看起来像这样的模型(简化):

class Customer < ActiveRecord::Base
  has_many :categories
end

class Category < ActiveRecord::Base
  belongs_to :customer

  # Columns in the categories table: lft, rgt and parent_id
  acts_as_nested_set :scope => :customer_id

  validates_presence_of :name
  # Further validations...
end
Run Code Online (Sandbox Code Playgroud)

数据库中的树按预期构造.的所有值parent_id,lft以及rgt是否正确.树有多个根节点(当然允许进入awesome_nested_set).

现在,我想在一个正确排序的树中呈现给定客户的所有类别,例如结构:例如嵌套<ul>标签.这不会太难,但我需要它才能有效(sql查询越少越好).

更新:想出可以在没有进一步SQL查询的情况下计算树中任何给定节点的子节点数:number_of_children = (node.rgt - node.lft - 1)/2.这并不能解决问题,但可能会有所帮助.

ruby sql activerecord ruby-on-rails nested-sets

8
推荐指数
3
解决办法
8115
查看次数

编辑操作中没有respond_to阻止(使用脚手架生成)?

有谁知道为什么respond_to生成的edit动作没有阻止?典型脚手架控制器中的每个其他动作都有一个respond_to块,以便输出htmlxml格式化.为什么edit行动是例外?

我正在使用最新版本的Ruby on Rails(2.1.1).

ruby ruby-on-rails

7
推荐指数
1
解决办法
618
查看次数

如何验证Markdown?

使用无效语法编写Markdown内容是可能的.无效意味着BlueCloth库无法解析内容并引发异常.markdownRails中的帮助程序不会捕获任何BlueCloth异常,因此完整页面无法呈现(而是呈现500 Server Error页面).

在我的例子中,允许用户编写Markdown内容并将其保存到数据库中.如果某人使用了无效语法,则该内容的所有连续呈现尝试都将失败(状态码500 - 内部服务器错误).

你是如何解决这个问题的?在保存到数据库之前,是否可以在模型级验证Markdown语法?

ruby markdown ruby-on-rails

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

带有"默认值"的SQL GROUP BY

我正在尝试SELECT使用GROUP BY子句创建语句,该子句应返回"默认值".

想象一下以下简单的MySQL表:

CREATE TABLE `tracker` (
  `id` INTEGER PRIMARY KEY auto_increment,
  `date` DATETIME NOT NULL,
  `customer_id` INTEGER NOT NULL
);
Run Code Online (Sandbox Code Playgroud)

该表只包含一条记录:

INSERT INTO `tracker` (`date`, `customer_id`) VALUES('2010-05-03', 1);
Run Code Online (Sandbox Code Playgroud)

在病房之后,我正在执行以下SQL查询:

SELECT DATE(`date`), COUNT(customer_id) FROM tracker
WHERE DATE(`date`) >= '2010-05-01' AND DATE(`date`) <= '2010-05-05'
GROUP BY DATE(`date`) ORDER BY DATE(`date`);
Run Code Online (Sandbox Code Playgroud)

并获得预期的结果集:

+----+---------------------+-------------+
| id | date                | customer_id |
+----+---------------------+-------------+
|  1 | 2010-05-10 00:00:00 |           1 |
+----+---------------------+-------------+
Run Code Online (Sandbox Code Playgroud)

但是,我希望结果集看起来像这样:

+--------------+--------------------+
| DATE(`date`) | COUNT(customer_id) |
+--------------+--------------------+ …
Run Code Online (Sandbox Code Playgroud)

mysql sql group-by mysql5

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

需要建议:子菜单的Rails视图结构?

想象一下,在您的应用程序中有两个RESTful控制器(UsersController,OffersController)和一个PagesController(用于静态内容,如index,about等).

您定义了以下路由:

map.with_options :controller => 'pages' do |pages|
  pages.root :action => 'index'     # static home page
  pages.about :action => 'about'    # static about page
  # maybe more static pages...
end
map.resources :users    # RESTful UsersController
map.resources :posts    # RESTful PostsController
Run Code Online (Sandbox Code Playgroud)

您的应用程序布局如下所示:

<html>
  <head>
    <title>Demo Application</title>
  </head>
  <body>
    <ul id="menu">
       <li>
         <%= link_to 'Home', root_path %>
       </li>
       <li>
         <%= link_to 'Offers', offers_path %>
         <ul id="submenu>
           <li><%= link_to 'Search', 'path/to/search' %></li>
           <li>maybe more links...</li>
         </ul>
       </li>
       <li>
         <%= link_to 'About', about_path %> …
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails

4
推荐指数
1
解决办法
2220
查看次数

使用path_prefix的浅路线?

最近我在我的一个应用程序中更改了一些嵌套资源以使用浅层路由.它工作得很好,我已经能够简化我的视图和控制器.

但是,我之前一直在使用path_prefix:

map.with_options :path_prefix => "blog" do |blog|
  blog.resources :posts do |posts|
    posts.resources :comments
  end
end
Run Code Online (Sandbox Code Playgroud)

请注意,所有路由都按预期为"/ blog"作为前缀.

# $ rake routes
#             posts GET    /blog/posts(.:format)                            {:controller=>"posts", :action=>"index"}
#                   POST   /blog/posts(.:format)                            {:controller=>"posts", :action=>"create"}
#          new_post GET    /blog/posts/new(.:format)                        {:controller=>"posts", :action=>"new"}
#         edit_post GET    /blog/posts/:id/edit(.:format)                   {:controller=>"posts", :action=>"edit"}
#              post GET    /blog/posts/:id(.:format)                        {:controller=>"posts", :action=>"show"}
#                   PUT    /blog/posts/:id(.:format)                        {:controller=>"posts", :action=>"update"}
#                   DELETE /blog/posts/:id(.:format)                        {:controller=>"posts", :action=>"destroy"}
#     post_comments GET    /blog/posts/:post_id/comments(.:format)          {:controller=>"comments", :action=>"index"}
#                   POST   /blog/posts/:post_id/comments(.:format)          {:controller=>"comments", :action=>"create"}
#  new_post_comment GET    /blog/posts/:post_id/comments/new(.:format)      {:controller=>"comments", :action=>"new"}
# edit_post_comment …
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails

4
推荐指数
2
解决办法
3122
查看次数

RoR:创建/更新:显示验证错误,同时保留以前的值

我有一个基本模型,我已经指定了一些字段来验证存在.在控制器的创建动作中我做标准:

@obj = SomeObject.new(params[:some_obj])

if @obj.save
  flash[:notice] = "ok"
  redirect...
else
  flash[:error] = @obj.errors.full_messages.collect { |msg| msg + "<br/>" }
  redirect to new form
end
Run Code Online (Sandbox Code Playgroud)

但是,当我重定向到新表单时,错误显示,但字段为空.有没有办法用输入的值重新填充字段,以便可以轻松纠正错误?

ruby ruby-on-rails

2
推荐指数
1
解决办法
1037
查看次数

如何强制从远程服务器检出最新版本?

我在GitHub上有我经常从我的本地计算机上提交的存储库.另一方面,我从存储库中取出服务器.Web服务器只是执行a git pull以从GitHub存储库获取最新的更改.这是完全自动化的,应该保持这种方式(像Ruby Tool Capistrano这样的解决方案已经出局).

一个简单的git pull通常工作得很好.但是,有时我将最后一次commit(git commit --amend)和git push更改两次更改为GitHub.如果服务器在两次推送到GitHub之间自动更新它的代码,则下一个服务器端git pull失败,因为存在合并冲突.

要解决此问题,我需要以下行为:服务器应继续git pull(或等效)GitHub存储库,但如果发生合并冲突,GitHub存储库应优先于服务器上的本地存储库.所以,我想要一个行为类似的git命令git clone,但不会每次都复制整个存储库.

git

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

RoR:使用application.rb访问模型

我正在开发一个简单的Web应用程序,它具有用户模型和角色模型(以及其他),以及包含许多控制器的管理部分.我想使用before_filter来检查会话中用户的用户是否有'can_access_admin'标志.

我在application.rb中有这个代码:

def check_role @user = session [:user]

if @ user.role.can_access_admin.nil?|| !@user.role.can_access_admin render:text =>"您当前的角色不允许访问管理区域." 返回结束

然后我在其中一个管理控制器中有这个代码:

class Admin :: BlogsController <ApplicationController before_filter:check_role

def list @blogList = Blog.find(:all)end end

当我尝试查看列表操作时,我收到此错误:

未定义的方法'角色'为用户...

任何人都知道我必须做什么才能在application.rb中识别角色关联?(请注意,关联配置正确,@ user.role在我试图使用的其他地方工作正常)

ruby ruby-on-rails

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