我想知道我是否可以创建一个返回只读字典的属性?
例:
Run Code Online (Sandbox Code Playgroud)private readonly Dictionary<string, IMyObject> _myDictionary; public Dictionary<string, IMyObject> MyDictionary { get { return _myDictionary; } }
因此,不允许使用MyDictionary的人添加,删除或更改项目.有什么方法可以做到这一点?
我在某处看到过像这样的urls.py结构:
from project.f import SomeClass
urlpatterns = patterns('',
(r'^url/$', SomeClass()),
)
Run Code Online (Sandbox Code Playgroud)
无处http://docs.djangoproject.com/en/dev/topics/http/urls/我可以找出这意味着什么,通常一个条目是这样的:
(r'^url/(?P<some_id>\d+)/$', 'project.views.some_view'),
Run Code Online (Sandbox Code Playgroud)
有人可以解释我是如何只使用SomeClass()吗?
如果SomeClass()构造是无参数的,那么SomeClass()构造可以工作,但是我想在那里有参数,所以我做了这样的事情:
(r'^url/(?P<some_id>\d+)/$', SomeClass()),
Run Code Online (Sandbox Code Playgroud)
并修改了SomeClass,它是:
class SomeClass(OtherClass):
def items(self):
return MyItems.objects.all()
Run Code Online (Sandbox Code Playgroud)
至:
class SomeClass(OtherClass):
def items(self, some_id):
return MyItems.objects.filter(pk=some_id)
Run Code Online (Sandbox Code Playgroud)
现在访问/ url /我得到:
TypeError at /url/12/
items() takes exactly 2 arguments (1 given)
Run Code Online (Sandbox Code Playgroud)
所以看起来参数不会传递.如果我尝试输入urls.py:
(r'^url/(?P<some_id>\d+)/$', SomeClass(some_id)),
Run Code Online (Sandbox Code Playgroud)
我明白了:
NameError at /url/12/
name 'some_id' is not defined
Run Code Online (Sandbox Code Playgroud)
如何在此设置中制作正确的urlpatterns?
我需要澄清一下如何使用来自 mysql 的数据填充选择。基本上我想做的是:
将有一个包含一些数据的第一个选择框。
<select>
<option>1</option>
<option>2</option>
<option>3</option>
</select>
Run Code Online (Sandbox Code Playgroud)
当用户在第一个选择中选择一个选项时,下面还有第二个选择,它应该根据在第一个选择中所做的选择来反映值。
<select>
<option>1.1</option>
<option>1.2</option>
<option>1.3</option>
</select>
Run Code Online (Sandbox Code Playgroud)
数据来自 MySQL。我不确定是否需要发布到同一页面,但如果我这样做了,如何保留在之前的选择框中选择的值?我需要使用javascript吗?
有什么帮助吗?
谢谢。
无论移动,重命名和内容修改,是否有办法在文件的生命周期内唯一标识文件(可能还有目录)?(Windows 2000及更高版本).制作文件的副本应该为副本提供它自己的唯一标识符.
我的应用程序将各种元数据与单个文件相关联.如果修改,重命名或移动文件,则能够自动检测和更新文件关联将非常有用.
FileSystemWatcher可以提供通知这些更改的事件,但是如果快速发生许多文件系统事件,它会使用可以轻松填充(和事件丢失)的内存缓冲区.
哈希是没有用的,因为文件的内容可以改变,因此哈希值会改变.
我曾想过使用文件创建日期,但是有一些情况下这不是唯一的(即复制多个文件时).
我还听说过NTFS中的文件SID(安全ID?),但我不确定这是否能满足我的要求.
有任何想法吗?
我在通过RMI传输的对象上遇到一个奇怪的问题.这已经破坏了我的头几天了,我想知道是否有人可以帮助解决这个问题.
我有一个Garage类(也是一个JPA实体,如果它是相关的)我推送到一个名为X over RMI的java进程(所以这个对象被序列化).Garage对象存储一个名为Car(也是JPA实体)的对象列表,这些对象也是Serializable.
Garage上的equals方法基本上是在汽车列表中调用equals(一个ArrayList)
当我在java进程中调用equals时,它不会因为某种原因在列表上调用equals,就像我期望它在列表中的所有Cars上调用equals来检查列表是否相等而不执行此操作.
奇怪的是,当单元测试时,它确实调用了Cars ArrayList的所有成员的equals.我甚至将对象序列化为单元测试的一部分,这也有效.有任何想法吗?我希望我能解决问题,随时请求任何信息澄清任何事情.
编辑:我几乎可以肯定它的ArrayList很奇怪,因为当我在我的对象中手动执行equals而不是在汽车列表中调用equals时我在汽车列表上执行了foreach循环并在每辆Car上调用equals(就像我预期的ArrayList equals无论如何,它按预期工作)
@Entity
@Table(schema="pdw", name="garage")
public class Garage
implements Comparable<Garage> ,
Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private String id;
private String name;
@OneToMany(cascade = CascadeType.ALL)
@JoinTable(schema="pdw")
private List<Car> cars = new ArrayList<Car>();
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name; …Run Code Online (Sandbox Code Playgroud) 在C++的这一段中,delete this讨论了构造的使用.列出了4个限制.
限制1到3看起来很合理.但是为什么限制4在那里我"必须不检查它,将它与另一个指针进行比较,将它与NULL进行比较,打印它,投射它,用它做任何事情"?
我的意思this是又一个指针.为什么我不能把reinterpret_cast它int或者叫它printf()输出它的值?
我想开始使用C#的2D游戏,所以我正在查看我的选项.XNA听起来不错,但有几点对我来说并不是很清楚.
如果我使用XNA,我可以构建我的游戏并将我的游戏作为独立的可执行文件从我的网站发布吗?还是有任何捕获?人们需要特殊的图书馆来玩我的游戏吗?我必须支付MS才能分发我的游戏吗?
通常我会编写一个程序,构建它,把可执行文件下载并预先安装,任何人都可以下载,安装和使用它.使用XNA时它是否也会像这样工作或有任何限制?
在某些时候,我工作副本中的所有文件都标有"S"符号,如下所示:
$ svn st
M S AclController.php
S InstallationController.php
S CustomerController.php
S RedirController.php
S IndexController.php
S LoginController.php
S OrderController.php
S ProductController.php
S SelfInstallController.php
S SelfcareController.php
Run Code Online (Sandbox Code Playgroud)
有趣的是,它只发生在这个特定的工作副本中 - 当我将项目签出到新目录时,它不会显示"S"标记.
如何摆脱这个烦人的"S"符号?它显着降低了WC状态的清晰度.
更新:我使用标准svn switch语法不时切换.直到最近才出现这个"S"符号.用于切换的命令是:
svn switch svn+ssh://xxxxxx/subversion/xxxxxxx/releases/1.0.16 .
Run Code Online (Sandbox Code Playgroud)
有什么办法可以清除"S"旗吗?
我有这个字符串:
foo bar 567 baz
Run Code Online (Sandbox Code Playgroud)
现在我想在每个数字之前添加String num:.
所以结果必须是:
foo bar num:567 baz
Run Code Online (Sandbox Code Playgroud)
这也必须工作:
foo 73761 barbazboom!! 87
result:
foo num:73761 barbazboom!! num:87
Run Code Online (Sandbox Code Playgroud)
搜索数字的正则表达式是这样的:[0-9]+
但我想用num:+ [匹配子字符串] 替换匹配的子字符串
我现在用数字写了一个例子,但另一个例子可以是:在每个电子邮件地址之前添加 Email found: