问题列表 - 第23825页

从动态ModelForm中删除字段

在ModelForm中,我必须测试用户权限,让他们填写正确的字段:

它的定义如下:

class TitleForm(ModelForm):    
    def __init__(self, user, *args, **kwargs):
        super(TitleForm,self).__init__(*args, **kwargs)            
        choices = ['','----------------']
        # company
        if user.has_perm("myapp.perm_company"): 
            self.fields['company'] = forms.ModelChoiceField(widget=forms.HiddenInput(),
                queryset=Company.objects.all(), required=False) 
            choices.append(1,'Company')
        # association
        if user.has_perm("myapp.perm_association")
            self.fields['association'] =
            forms.ModelChoiceField(widget=forms.HiddenInput(),
                queryset=Association.objects.all(), required=False)
            choices.append(2,'Association')
        # choices
        self.fields['type_resource'] = forms.ChoiceField(choices = choices)

    class Meta:
        Model = Title  
Run Code Online (Sandbox Code Playgroud)

这个ModelForm可以完成这项工作:我隐藏了模板上的每个字段,并且由于javascript而使它们出现......
问题是这个ModelForm是模型中定义的每个字段都将显示在模板上.
如果不需要,我想从表单中删除它们:
例如:如果用户对模型公司没有权利,则不会在模板中的呈现形式中使用它.

问题是你必须将字段列表放在带有字段排除属性的表单的Meta类中,但我不知道如何动态地管理它们.

任何的想法??
感谢提前回答任何问题.

django field dynamic modelform

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

如何从命令提示符关闭selenium hub/grid

我启动Selenium hub从端口4444上的命令提示符启动Selenium Grid.现在我从其他命令提示符启动Selenium RC.

它向我显示错误消息"Selenium已在端口4444上运行.或者其他一些服务是......"

现在我无法启动Selenium RC.请帮我如何从命令提示符关闭/关闭集线器.

selenium selenium-grid selenium-rc

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

无法从程序集"...\Microsoft.Search.Interop.dll"嵌入互操作类型,因为它缺少GuidAttribute属性

在我创建的新项目中添加对Microsoft.Search.Interop.dll库的引用时出现此错误.

Microsoft.Search.Interop.dll是一个库,它提供了一些与Windows搜索通信的有用API.我使用它来向系统索引器添加文件夹.

有没有其他人得到这个错误,如果是这样,我该如何解决它?

我在Windows Server 2008上使用VS2010 RC,如果这很重要的话.

dll attributes guid visual-studio-2010-rc

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

当我运行Build and Analyze时,我是否应该瞄准没有分析器结果

我已多次阅读过Build and Analyze并不完美.当我运行它时,它确实产生了一些有用的信息并且肯定改进了我的代码,但它也提供了不是必要问题的结果.在那一刻我正在改变我的代码,试图摆脱所有的分析结果,无论它们是否是一个问题.这是最好的做法,因为像警告那样很容易检查你是否有问题,或者我是否应该认识到分析仪并不完美并且除非找到真正的问题,否则不要更改代码?

xcode cocoa memory-leaks clang

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

MySQL和PHP - 创建多个父子关系

我正在尝试使用带有层次结构的类别表来构建导航系统.通常,该表定义如下:

id (int) - Primary key
name (varchar) - Name of the Category
parentid (int) - Parent ID of this Category referenced to same table (Self Join)
Run Code Online (Sandbox Code Playgroud)

但问题是,我要求一个类别可以是多个父类别的子类.就像一个拥有和属于许多(HABTM)的关系.

我知道如果有两个表,类别和项目,我们使用连接表categories_items列出HABTM关系.但在这里,我没有两张桌子,只有桌子,但应该以某种方式显示HABTM关系.这是可以使用单个表吗?如果是,怎么样?如果不可能,我应该在创建附加连接表时遵循哪些规则(表命名,字段)?

我正在尝试使用CakePHP实现这一点,如果有人可以为这个问题提供CakePHP解决方案,那将是非常棒的.即使这是不可能的,任何关于创建连接表的解决方案都是值得赞赏的.谢谢你的时间.

- 编辑 - 我的问题似乎有点令人困惑,所以我正在努力重申我正在寻找的东西.在传统的自引用(自联接)父子关系中,每个项目只能有一个父项.我正在寻找的是模拟HABTM关系,即每个项目的多个父母.

类别和项目 - 要定义HABTM,我们使用categories_items连接表.

如果在类别中我需要HABTM,我该怎么办?

php mysql cakephp join

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

*css黑客不再在ie8工作?

好的,所以我想让我的边框css仅适用于ie8或更早版本(因为它出来时不是ie9).

目的:这样,即缺失的阴影将被边框替换:

*黑客似乎没有工作?我在ie8本地测试......

input, textarea{
display:block;
border:none;
*border: 1px solid #000;
-moz-box-shadow: 0px 0px 1px 1px #999;
-webkit-box-shadow: 0px 0px 1px 1px #999;
box-shadow: 0px 0px 1px 1px #999;

-moz-border-radius: 2px;
-webkit-border-radius: 2px; 
margin: 1px 0px 10px 0px;
font-size:12px;
color:#494949;
}
Run Code Online (Sandbox Code Playgroud)

html css

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

git存储库的正则表达式

git存储库的正则表达式是什么?

示例链接:git@github.com:someone/someproject.git

所以它就像[user] @ [server]:[project] .git

服务器可以是url或ip项目可以包含除字母数字之外的其他一些字符,如' - '我不确定'/'的作用是什么

有什么建议?

regex

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

RegExp:想要找到所有不以".html"结尾的链接

我是正则表达式的相对新手(尽管我已成功使用它们多次).我想在文档中找到所有不以".html"结尾的链接我提出的正则表达式是:

href=\"([^"]*)(?<!html)\"
Run Code Online (Sandbox Code Playgroud)

在Notepad ++中,我的编辑器href=\"([^"]*)\"找到所有链接(包括以"html"结尾的链接和不以"html"结尾的链接).为什么不负面的背后工作呢?

我也尝试过前瞻:

href=\"[^"]*(?!html\")
Run Code Online (Sandbox Code Playgroud)

但那也不起作用.

有人可以帮忙吗?

干杯,gro ..

regex notepad++ negative-lookbehind negative-lookahead

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

有没有办法在.NET中进行'正确'的算术舍入?/ C#

我试图将一个数字舍入到它的第一个小数位,考虑到不同的MidpointRounding选项,这似乎运作良好.但是,当该数字具有随后的小数位数时会出现问题,这些小数位数会在算术上影响舍入.

一个例子:

随着0.1,0.11..0.190.141..0.44它的工作原理:

Math.Round(0.1, 1) == 0.1
Math.Round(0.11, 1) == 0.1
Math.Round(0.14, 1) == 0.1
Math.Round(0.15, 1) == 0.2
Math.Round(0.141, 1) == 0.1
Run Code Online (Sandbox Code Playgroud)

但随着0.141..0.149它总是回归0.1,虽然0.146..0.149应该回合0.2:

Math.Round(0.145, 1, MidpointRounding.AwayFromZero) == 0.1
Math.Round(0.146, 1, MidpointRounding.AwayFromZero) == 0.1
Math.Round(0.146, 1, MidpointRounding.ToEven) == 0.1
Math.Round(0.146M, 1, MidpointRounding.ToEven) == 0.1M
Math.Round(0.146M, 1, MidpointRounding.AwayFromZero) == 0.1M
Run Code Online (Sandbox Code Playgroud)

我试图提出一个解决这个问题的函数,并且它适用于这种情况,但当然如果你尝试舍入即0.144449它的第一个十进制数字(应该是0.2,但结果0.1)它会很好地失败.(那不是也不能使用Math.Round().)

private double "round"(double value, int digit)
{
    // basically the …
Run Code Online (Sandbox Code Playgroud)

.net c# math bankers-rounding rounding

6
推荐指数
4
解决办法
2705
查看次数

make中的"all"代表什么?

我阅读了一些关于Makefile的教程,但对我而言,目标"所有"代表什么以及它的作用仍然不清楚.

有任何想法吗?

makefile

97
推荐指数
3
解决办法
10万
查看次数