问题列表 - 第37621页

accepts_nested_attributes_for 验证

我正在使用 Rails 2.3.8 并接受_nested_attributes_for。

我有一个简单的类别对象,它使用 awesome_nested_set 来允许嵌套类别。

对于每个类别,我想要一个名为 code 的唯一字段。对于每个级别的类别,这将是唯一的。这意味着父类别都将具有唯一的代码,子类别在其自己的父类别中将是唯一的。

例如:

code name
1    cat1
   1 sub cat 1
2    cat2
   1 sub cat 1
   2 sub cat 2
3    cat3
   1 sub1
Run Code Online (Sandbox Code Playgroud)

这无需验证过程即可工作,但是当我尝试使用以下内容时:validates_uniqueness_of :code, :scope => :parent_id

这将不起作用,因为尚未保存父级。

这是我的模型:

class Category < ActiveRecord::Base
  acts_as_nested_set
  accepts_nested_attributes_for :children, :reject_if => lambda { |a| a[:name].blank? }, :allow_destroy => true

  default_scope :order => "lft"

  validates_presence_of :code, :name, :is_child
  validates_uniqueness_of :code, :scope => :parent_id
end
Run Code Online (Sandbox Code Playgroud)

我已经想到了一种不同的方法来做到这一点,它非常接近工作,问题是我无法检查子类别之间的唯一性。

在第二个示例中,我在名为“is_child”的表单中嵌入了一个隐藏字段,以标记该项目是否为子类别。这是我的这个模型的例子:

class Category < ActiveRecord::Base
  acts_as_nested_set
  accepts_nested_attributes_for :children, …
Run Code Online (Sandbox Code Playgroud)

validation ruby-on-rails nested-forms

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

您是否使用匈牙利表示法来控制名称?

我完全同意我们不应该使用匈牙利表示法来命名变量.但似乎匈牙利表示法对名称控件(尤其是Winform控件)仍然有用.考虑这些:

GridView grvUsers
TextBox txtPassword
Run Code Online (Sandbox Code Playgroud)

等等...

我真的怀疑在这种情况下我们应该避免使用匈牙利符号吗?如果应该,这是名称控件的替代解决方案?

c# naming-conventions hungarian-notation winforms

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

Regexp检查IP是否有效

我想知道是否可以将regexp中的值与Python中的regexp系统进行比较.匹配IP的模式很容易,但每个1-3位数不能超过255,这就是我有点难过的地方.

python regex

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

D编程语言中的Erlang风格并发

我认为Erlang风格的并发性是核心数量呈指数级增长的答案.你可以用其他主流语言伪造它.但解决方案总是让我失望.我不愿意放弃多范式编程(C++/D)来切换到Erlang的严苛语法.

什么是Erlang风格的并发:

来自其中一位语言作者(究竟什么是Erlang的并发模型?):

  • 轻量级并发.
    便宜的创建线程和廉价来维持疯狂的数字.
  • 异步通信.
    线程仅通过消息进行通信.
  • 错误处理.
  • 过程隔离.

或者来自知情的博主(什么是Erlang风格的并发?):

  • 快速创建/销毁流程
  • 能够支持>> 10 000个并发过程,特征基本不变.
  • 快速异步消息传递.
  • 复制消息传递语义(无共享并发).
  • 过程监控.
  • 选择性的消息接收.

我认为D的消息传递可以完成大部分功能.我想知道的是" >> 10,000个并发进程(线程) "和" 快速进程创建/销毁 ".

D如何处理这些要求?

我认为要正确支持它们,你必须使用绿色线程.可以将D的消息传递功能与绿色线程库一起使用吗?

concurrency erlang d

25
推荐指数
2
解决办法
3680
查看次数

动态设置搜索提示

有谁知道如何动态设置android搜索对话框提示?T尝试做类似的事情:

<?xml version="1.0" encoding="utf-8"?>
<searchable xmlns:android="http://schemas.android.com/apk/res/android"
 android:label="@string/search_label"
 android:hint="@string/search_hint"
 android:id="@+id/search_dialog_text">
</searchable>
Run Code Online (Sandbox Code Playgroud)

某处:

@Override
public boolean onSearchRequested() {
  Bundle appSearchData = new Bundle();
  appSearchData.putString("SomeSpecificParam", SomeClass.class.getName());
  startSearch("", false, appSearchData, false);
  EditText  text = (EditText )findViewById(R.id.search_dialog_text);
  text.setHint("Search something else");
  return true;
}
Run Code Online (Sandbox Code Playgroud)

但是文本等于null.

所以期待你的建议.谢谢.

android android-searchmanager

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

如何从C调用C++函数?

我有一个标题声明函数,这些函数将指向C++对象的指针作为参数.该实现是一个单独的C++文件.如何在C中包含此标头并使用C中的函数,即使参数需要是C++对象指针?

c c++

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

从iPhone中的资源目录加载PDF文件崩溃

NSURL *pdfURL = [[NSBundle mainBundle] URLForResource:@"sampleLayout.pdf" withExtension:nil];
Run Code Online (Sandbox Code Playgroud)

以上行警告NSBundle可能无法响应,-URLForResource:withExtension: 并且从此URL路径加载PDF文件时应用程序崩溃.

iphone nsurl nsbundle

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

帮助Codeigniter和MVC模型模式

我正在创建一个类似于wordpress博客的网站,首页将显示一个帖子循环:post_summary,author info和tags.

我有四张桌子:

posts | users | tags | tag relationships
Run Code Online (Sandbox Code Playgroud)

显示我需要在SELECT语句中执行多个JOIN的所有结果

但是,为了保持MVC模式,每个表(或对象?)应该有一个模型.所以我的问题是:如果我正在做一个SELECT all,我将如何做到这一点并仍然保持MVC模式?

要获得帖子的所有必需信息,我需要author_id从users表中获取我的信息并且我需要post_id来获取标签(等等).如果我的所有查询都在不同的模型中,那么执行查询的最佳方法是什么?

我是否制作了一个可以完成所有JOINS并只使用它的模型?我应该从视图中加载模型吗?或者我应该在Controller中进行其他查询工作?

model-view-controller model codeigniter

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

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

具有多列的单个固定表与灵活的抽象表

我想知道你是否有一个网站上有十几种不同类型的列表(商店,餐馆,俱乐部,酒店,活动)需要不同的字段,是否有一个好处,创建一个表定义如下所示的列
示例:

shop_id | name | X | Y | city | district | area | metro | station | address | phone | email | website | opening_hours
Run Code Online (Sandbox Code Playgroud)

或者更类似于此的抽象方法:

object_id | name        
---------------
1         | Messy Joe's  
2         | Bate's Motel 

type_id | name
---------------
1       | hotel
2       | restaurant


object_id | type_id
---------------
1         | 2
2         | 1

field_id | name           | field_type
---------------
1        | address        | text
2        | opening_hours  | date 
3        | …
Run Code Online (Sandbox Code Playgroud)

mysql sql database database-design data-modeling

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