小编gjb*_*gjb的帖子

Django:内置包含标记与自定义包含标记

Django的内置包含标记自定义包含标记有什么区别?

我已经阅读了文档,两者似乎都达到了相同的目标:渲染一个模板,传递一个上下文或变量.

django django-templates

11
推荐指数
2
解决办法
1360
查看次数

MySQL中给定半径内的查询点

我创建了以下MySQL表来存储纬度/经度坐标以及每个点的名称:

CREATE TABLE `points` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(128) NOT NULL,
  `location` point NOT NULL,
  PRIMARY KEY (`id`),
  SPATIAL KEY `location` (`location`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1;
Run Code Online (Sandbox Code Playgroud)

我试图查询:

  • 给定点n英里范围内的所有点;
  • 每个返回点距给定点的距离

我发现的所有示例都涉及使用最小边界矩形(MBR)而不是半径.该表包含大约100万个点,因此需要尽可能高效.

mysql database gis spatial mysql-spatial

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

Django模板中的Grouped CheckboxSelectMultiple

如何CheckboxSelectMultiple对相关模型生成的复选框进行分组?

最好通过示例来说明这一点.

models.py:

class FeatureCategory(models.Model):
    name = models.CharField(max_length=30)

class Feature(models.Model):
    name = models.CharField(max_length=30)
    category = models.ForeignKey(FeatureCategory)

class Widget(models.Model):
    name = models.CharField(max_length=30)
    features = models.ManyToManyField(Feature, blank=True)
Run Code Online (Sandbox Code Playgroud)

forms.py:

class WidgetForm(forms.ModelForm):
    features = forms.ModelMultipleChoiceField(
        queryset=Feature.objects.all(),
        widget=forms.CheckboxSelectMultiple,
        required=False
    )
    class Meta:
        model = Widget
Run Code Online (Sandbox Code Playgroud)

views.py:

def edit_widget(request):
    form = WidgetForm()
    return render(request, 'template.html', {'form': form})
Run Code Online (Sandbox Code Playgroud)

template.html:

{{ form.as_p }}
Run Code Online (Sandbox Code Playgroud)

以上产生以下输出:

[] Widget 1
[] Widget 2
[] Widget 3
[] Widget 1
[] Widget 2
Run Code Online (Sandbox Code Playgroud)

我想要的是功能复选框按功能类别分组(基于ForeignKey):

Category 1:
  [] Widget …
Run Code Online (Sandbox Code Playgroud)

django django-templates django-forms

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

Ruby/Rails:将范围转换为哈希

将范围1..10转换为以下格式的哈希的最简单方法是什么?

{
  1 => '£1',
  2 => '£2',
  # ...
}
Run Code Online (Sandbox Code Playgroud)

我试过这样做map,但最终得到一个哈希数组而不是一个哈希.

谢谢.

ruby ruby-on-rails ruby-on-rails-3

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

Rails:字段名称

我有一个带有'email'字段的User模型.

在我看来,我已将此字段的标签呈现为"电子邮件地址",如下所示:

<%= form_for(:user) do |f| %>
  <%= f.label :email, 'Email address' %><br /
  <%= f.text_field :email %>
<% end %>
Run Code Online (Sandbox Code Playgroud)

但是,当生成验证错误时,将使用"电子邮件":

电子邮件无效

我可以添加到模型中以便:电子邮件始终呈现为"电子邮件地址"而不是简单地"电子邮件"吗?

非常感谢

ruby-on-rails ruby-on-rails-3

6
推荐指数
2
解决办法
3482
查看次数

使用state_machine进行条件验证

我正在使用state_machine来构建一个多步骤表单,在转换到下一步之前验证每个步骤的字段.

这是我的模特:

class Foo < ActiveRecord::Base
  state_machine :initial => :step1 do
    event :next do
      transition :step1 => :step2
      transition :step2 => :step3
    end
    event :previous do
      transition :step3 => :step2
      transition :step2 => :step1
    end

    state :step1 do 
      validates_presence_of :field1
    end
    state :step2 do 
      validates_presence_of :field2
    end
    state :step3 do 
      validates_presence_of :field3
    end
  end  
end
Run Code Online (Sandbox Code Playgroud)

但是,这没有按预期工作:

> f = Foo.new
=> #<Foo id: nil, field1: nil, field2: nil, field3: nil, state: "step1", created_at: nil, updated_at: nil>
Run Code Online (Sandbox Code Playgroud)

Foo初始化为'step1'状态.到现在为止还挺好.

> …
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails state-machine ruby-on-rails-3

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

Rails:预定任务来预热缓存?

我使用以下内容来缓存使用memcached的缓慢加载页面:

caches_action :complex_report, :expires_in => 1.day
Run Code Online (Sandbox Code Playgroud)

控制器操作受Devise身份验证保护.

页面当前在用户第一次请求时被缓存.然后从缓存中提取当天的后续请求.

这个问题是初始请求需要20-30秒才能加载.是否可以通过计划任务预先填充缓存?

任何建议非常感谢.

memcached caching ruby-on-rails ruby-on-rails-3

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

我怎么能用MySQL做到这一点?

我正在使用MySQL并有两个数据库表,如下所示:

用户

id   username
--------------
1    Bill
2    Steve
Run Code Online (Sandbox Code Playgroud)

对象

user_id   key   value
----------------------
1         A     X
1         B     Y
1         C     Z
2         A     S
2         C     T
Run Code Online (Sandbox Code Playgroud)

产生以下结果需要什么查询?

username   A  B  C
-------------------
Bill       X  Y  Z
Steve      S     T
Run Code Online (Sandbox Code Playgroud)

我尝试了这个INNER JOIN,但最后有5行(每个对应的对象行一个).

任何帮助非常感谢.

mysql sql

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

使用JSON服务作为Rails模型

如何将JSON服务用作Rails 3.2应用程序的模型?

我想将模型方法链接到JSON请求,例如

  • MyModel.create 生成JSON请求以创建新记录
  • MyModel.find 生成JSON请求以检索记录并将JSON响应解码为模型对象

构建此类功能的首选方法是什么?我正在研究的一个选项是创建一个自定义DataMapper适配器.

谢谢.

更新:
请注意,我不能使用ActiveResource,因为这需要JSON服务以某种方式响应,在这种情况下它不会.

json model ruby-on-rails ruby-on-rails-3

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

使用包含()的XPath count()

我正在使用以下(次优)XML:

<a>
  <b>
    <c>X:1 Y:0</c>
    <c>X:1 Y:0</c>
    <c>X:2 Y:0</c>
  </b>
  <b>
    <c>X:1 Y:0</c>
    <c>X:2 Y:0</c>
  </b>
</a>
Run Code Online (Sandbox Code Playgroud)

我试图使用XPath来计算<c>其内容包含的节点数X:1:

count(contains(/a/b/c, 'X:1'))
Run Code Online (Sandbox Code Playgroud)

但是,这会返回错误,而不是返回预期的计数3.

我究竟做错了什么?

xml xpath

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