问题列表 - 第20472页

如何在Django中创建unique_for_field slug?

Django有一个unique_for_date属性,您可以在向模型添加SlugField时设置该属性.这会导致slug仅对您指定的字段的Date具有唯一性:

class Example(models.Model):
    title = models.CharField()
    slug = models.SlugField(unique_for_date='publish')
    publish = models.DateTimeField()
Run Code Online (Sandbox Code Playgroud)

对于像ForeignKey这样的非DateTime字段,实现相同功能的最佳方法是什么?理想情况下,我想做这样的事情:

class Example(models.Model):
    title = models.CharField()
    slug = models.SlugField(unique_for='category')
    category = models.ForeignKey(Category)
Run Code Online (Sandbox Code Playgroud)

这样我就可以创建以下网址:

/example/category-one/slug
/example/category-two/slug
/example/category-two/slug <--Rejected as duplicate
Run Code Online (Sandbox Code Playgroud)

我的想法到目前为止:

  • 将slug和categoryid的唯一索引添加到表中.这需要Django之外的代码.当插入/更新失败时,内置管理员会正确处理吗?

  • 覆盖模型的保存并添加我自己的验证,如果存在重复则抛出错误.我知道这会起作用,但看起来不是很干.

  • 创建一个继承自base的新slug字段,并在那里添加unique_for功能.这似乎是最好的方法,但我查看了核心的unique_for_date代码,并且扩展它似乎不太直观.

有关最佳方法的任何想法,建议或意见?

django django-models slug

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

是否可以在Eclipse中对项目进行分组?

是否可以在Eclipse中对项目进行分组?或者可能有一个子项目的项目?

eclipse project

112
推荐指数
4
解决办法
4万
查看次数

我的ANTLR词法分析器如何匹配由另一种令牌的子集组成的字符?

我认为这是一个简单的ANTLR问题.我有两种令牌类型:identspecial_ident.我希望我special_ident匹配一个字母后跟一个数字.我希望泛型ident匹配单个字母,可选地后跟任意数量的字母或数字.我的(不正确的)语法如下:

expr 
    : special_ident
    | ident
    ;

special_ident : LETTER DIGIT;
ident         : LETTER (LETTER | DIGIT)*;

LETTER : 'A'..'Z';
DIGIT  : '0'..'9';
Run Code Online (Sandbox Code Playgroud)

当我尝试检查这个语法时,我收到了这个警告:

决策可以使用多个替代方案匹配诸如"LETTER DIGIT"之类的输入:1,2.结果,对于该输入禁用了备选方案2

我知道我的语法含糊不清,输入A1可以匹配任何一个ident或者special_ident.我真的只想special_ident在最狭窄的情况下使用它.

这是一些示例输入以及我希望它匹配的内容:

A      : ident
A1     : special_ident
A1A    : ident
A12    : ident
AA1    : ident
Run Code Online (Sandbox Code Playgroud)

我如何形成我的语法,以便正确识别我的两种类型的标识符?

grammar antlr

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

单元/集成测试Asterisk配置

当然,单元和集成测试通常作为开发过程的一部分执行.我正在寻找在现有系统的配置中使用这种方法的方法,在这种情况下是Asterisk软PBX.

在Asterisk的情况下,配置文件与其他任何编程语言一样多,包括循环,跳转,条件等,并且可能变得非常复杂.对配置的更改通常会遇到与复杂软件产品更改相同的问题 - 如果没有测试,很难预见所有效果.由于系统的性质是与外部实体通信,即拨打电话,这一点变得更糟.

我有一些关于使用调用文件测试系统的想法(在扩展之间创建特定调用),同时观察生成事件的管理器界面.然后,测试可以观察预期结果,即拨打*99#应该导致语音邮件应用程序被调用.

缺陷是显而易见的 - 它不测试实际结果,只测试系统认为的结果,并且可能需要对被测系统进行一些修改.要足够强大地编写这些测试以仅触发预期输出也是非常困难的,特别是如果系统正在使用中(即正在进行其他调用).

我想要的是Asterisk的测试系统,不可能吗?如果没有,您是否有任何关于如何以合理的方式解决这个问题的想法?我愿意花费相当多的开发时间并在友好许可下发布结果,但我不确定最好的方法.

configuration integration-testing unit-testing asterisk

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

HtmlUnit可以处理JavaScript重定向吗?

我可以强制HtmlUnit返回JavaScript想要重定向到的URL,而不是自动遵循JavaScript重定向吗?

//上下文:

如果连续有5个JavaScript重定向,我只能看到它停止的页面的URL - 我无法查看它运行的5个URL.

也许我可以将记录器连接到回调方法以查找重定向?不确定这是否可行,或者它是如何工作的..

javascript java htmlunit

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

虚拟表C++

我读了很多人写的"一个虚拟表存在于一个已经在其中声明了虚函数的类".

我的问题是,vtable是仅存在于具有虚函数的类还是存在于从该类派生的类中.

例如

class Base{
    public:
        virtual void print(){cout<<"Base Print\n";}
};
class Derived:public Base{
    public:
        void print(){cout<<"Derived print\n";}
};

//From main.cpp 
Base* b = new Derived;
b->print();
Run Code Online (Sandbox Code Playgroud)

问题:如果没有派生类的vtable,那么输出就不会是"派生打印".所以IMO存在一个vtable,用于任何已声明虚函数的类,也存在于从该类继承的类中.它是否正确 ?

c++ virtual-functions derived-class vtable

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

我可以在Objective-C中的按钮内存储自定义对象吗?

在winforms/C#中,大多数UI控件都有.Tag标记,所以像myButton.Tag = myObject; 其中Tag属性是一个'对象'类型,因此您基本上可以存储任何类型的对象.我如何在Objective-C/Cocoa中实现这一目标?所有UI元素都有类似.Tag的东西,我可以存储NSObject或其他东西吗?如果是这样,请你提供一个例子.非常感谢!

注意:我确实在那里看到了整数.Tag,但我想要一个对象标签.但我想这不存在.好吧.

iphone cocoa cocoa-touch objective-c uikit

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

Qt绘图应用程序

目前我正在尝试开发一些简单的情节原型,我正在努力解决某种白/空表综合症.两年后我回到Qt,所以我觉得很迟钝.

我的申请应该:

  • 绘制和管理自定义数据层
  • 自定义画布背景上的情节
  • 在情节上管理标记

我的计划是使用以下设计:

  • QGraphicsScene/View/Item作为精灵,如管理小部件,用于背景,标记,指针和其他"位图"对象等.
  • QPainter/ QpixmapQPicture 实际数据层 - 如果可能的话,将它们设置为QGraphicItem简化动态图形的管理

我不想使用Qwt或类似的库,除非我可以在自定义背景上绘制它(我不喜欢qwt图形样式的外观).

我的计划在qt类的使用和组成范围内是否合适?我想至少清楚地了解这种原型应该涉及的类.提前致谢.P.

graphics plot qt pyqt

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

Java BigDecimal三角法

我正在开发一个能够像String一样评估String的数学解析器'5+b*sqrt(c^2)'.我正在使用ANTLR进行解析并取得良好进展.现在我摔倒在Java类上BigDecimal并且想:嘿,为什么不在这里考虑精度.

我的问题是Java API不提供BigDecimal类似的三角函数方法java.lang.Math.你知道是否有像Apache Commons这样的好的数学库可以解决这个问题吗?

其他问题是如何实现功率方法,以便我可以用BigDecimals 计算4.9 ^ 1.4 .这可能吗?

关于数值计算的书籍请求也受到赞赏.

java precision trigonometry bigdecimal

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

从PHP读取用户主目录

我找不到一种方法来获取用户的主目录(例如/ home/jack ;无论在bash指向哪个〜)使用CGI(suPHP)在PHP中.$ _ENV数组为空,getenv('HOME')不返回任何内容.

我想这样做的原因是,在缺乏配置的情况下,我想找到我的应用程序在/home/user/.myappnamehere中使用的变量文件,就像大多数Linux应用程序一样.


我已经建立了一些东西,但它并不是最好的; 虽然它有效,但它假定了很多系统(例如/ etc/passwd的存在)

 $usr = get_current_user();
    $passwd = file('/etc/passwd');
    $var = false;
    foreach ($passwd as $line) {
        if (strstr($line, $usr) !== false) {
            $parts = explode(':', $line);
            $var = realpath($parts[5].'/.report');
            break;
        }
    }
Run Code Online (Sandbox Code Playgroud)

php environment-variables home-directory

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