我已经看过这个问题:Python迭代器 - 如何在新的样式类中动态分配self.next?
但这对我没有帮助,因为我想迭代一个列表的错误属性(即已经可迭代)而不必明确使用该属性.我希望这样做:
class SCE(Exception):
"""
An error while performing SCE functions.
"""
def __init__(self, value=None):
"""
Message: A string message or an iterable of strings.
"""
if value is None:
self._values = ['A general SCE error has occured.']
elif isinstance(value, str):
self._values = [value]
else:
self._values = list(value)
def __iter__(self):
return self._values
def __repr__(self):
return repr(self._values)
Run Code Online (Sandbox Code Playgroud)
但是,在shell中我得到了这个:
try:
raise CSE(['error one', 'error two'])
except CSE, e:
for i in e:
print(i)
Traceback (most recent call last):
File …Run Code Online (Sandbox Code Playgroud) 我有以下代码来显示一些图像:
HTML:
<div class="footer-logos">
<ul>
<li><img src="/sites/default/files/imagefield_thumbs/All Ears Cambodia Logo_1.png" alt="" class="first"></li>
<li><img src="/sites/default/files/imagefield_thumbs/MLF rev.jpg" alt="" class=""></li>
<li><img src="/sites/default/files/imagefield_thumbs/TAMTF A.jpg" alt="" class=""></li>
<li><img src="/sites/default/files/imagefield_thumbs/unltd-logo.png" alt="" class=""></li>
<li><img src="/sites/default/files/imagefield_thumbs/CECILYS HIGH RES.jpg" alt="" class=""></li>
<li><img src="/sites/default/files/imagefield_thumbs/Street Child Africa.jpg" alt="" class="last"></li>
</ul>
</div>
Run Code Online (Sandbox Code Playgroud)
CSS:
.footer-logos {text-align:center;}
.footer-logos img {margin-left:20px;margin-right:20px;}
.footer-logos img.first {}
.footer-logos img.last {}
.footer-logos ul {}
.footer-logos ul li {display: inline; list-style:none;}
Run Code Online (Sandbox Code Playgroud)
这会生成如下图像:
alt text http://labs.dante-studios.com/footer-logos-normal.jpg
但我希望它能垂直居中,所以看起来像:
alt text http://labs.dante-studios.com/footer-logos-fixed.jpg
我已经尝试通过CSS垂直对齐所有内容,但除非我使用表格,否则这不会起作用.所以无论如何我可以在不使用表格行的情况下获得所需的效果?
更新1
产生的图像可能具有不同的高度,因此不能使用固定高度的css元素......
我正在努力EmailSender,我正在从我的Web.config文件中获取电子邮件地址.如果可能的话,我还想从同一部分获取该电子邮件的"显示名称",但我没有看到明显的方法来执行此操作.
在我的Web.config文件中,我包含了一个默认的"来自电子邮件地址",如下所示:
<configuration>
<system.net>
<mailSettings>
<smtp from="myaddress@mydomain.com"><!-- no displayName attribute :( -->
<network ... />
</smtp>
</mailSettings>
</system.net>
</configuration>
Run Code Online (Sandbox Code Playgroud)
在我EmailSender,我有这样的事情:
var smtpSection = ...;
var message = new MailMessage();
message.From = new MailAddress(_settings.From, senderDisplayName);
Run Code Online (Sandbox Code Playgroud)
是否有推荐的方法存储senderDisplayName在web.config文件中?
有没有办法将其包含在from属性中?例如:
<smtp from="Automatic Mailer <myaddress@mydomain.com>">
Run Code Online (Sandbox Code Playgroud)appSettings?在Lua中编写一个函数,创建两个表.我希望将表格分配给值名称,并添加x,并添加一个.例如,如果name是line,它将创建两个表linex和liney,但我无法弄清楚如何做到这一点.以下显然不起作用(仅用于显示目的),但我将如何进行此操作?
function makelinep(x,y,minrand,maxrand,name,length)
name..x = {}
name..y = {}
Run Code Online (Sandbox Code Playgroud)
后来我希望在写完值后访问"linex"和"liney".
不使用Google CDN进行jquery会破坏不在网页上使用跨域请求的规则.我们相信Google足以做到这一点吗?
关于如何开始修复老式的PHP脚本有什么建议吗?
几天前,我收到了开发一个旧的PHP项目的提议,而且老式的意思是结构没有使用OOP编码方法,并且它没有明确的框架.
我很困惑从哪里开始,并想知道开发旧脚本有哪些方法.
注意:他们不想花很多钱来开始一个新项目.
那么你会建议更新旧的PHP脚本的方法是什么?
我有兴趣在我的页面上添加一个棒反馈选项卡.没有像uservoice,monyta,getsatifaction等第三方......等等.
在垂直滚动时应该是粘性的,并且标签应该滑出来显示要填写和提交的表单,非常像monyta.
任何JQuery插件(或普通的Javascript)这样做?想要一个主要完成而不是你可以自己动手的东西.
我正在尝试在XML模板中输出一些HTML,Symfony的转义方法正在弄乱它.所以我尝试在模块的配置文件夹中制作settings.yml的副本,但它似乎完全被忽略了.有没有一种简单的方法来更改每个模块甚至每个模板的escaping_strategy和/或escaping_method设置?
如果我的表单是页面内容的主要部分,那么在页面加载时通过JavaScript将焦点分配给第一个表单字段会对可访问性产生任何负面影响吗?
我正在通过构建一些供我自己使用的实用程序网站来慢慢建立我的Zend技能.我一直在使用Zend Forms和Form验证,到目前为止我一直很高兴我已经理解了Zend的做事方式.但是我对如何在编辑表单的上下文中使用Zend_Validate_Db_NoRecordExists()以及映射到必须唯一的数据库列的字段感到困惑.
例如,使用这个简单的表
TABLE Test
(
ID INT AUTO_INCREMENT,
Data INT UNIQUE
);
Run Code Online (Sandbox Code Playgroud)
如果我只是在Table Test中添加一个新行,我可以在Data字段的Zend Form元素中添加一个验证器:
$data = new Zend_Form_Element_Text('Data');
$data->addValidator( new Zend_Validate_Db_NoRecordExists('Test', 'Data') )
Run Code Online (Sandbox Code Playgroud)
在表单验证时,此验证程序将检查表中是否已存在Data元素的内容.因此,插入Test可以继续而不违反数据字段UNIQUE限定符.
但是,编辑Test表的现有行时情况会有所不同.在这种情况下,验证器需要检查元素值是否满足两个互斥条件条件之一:
用户已更改元素值,表中当前不存在新值.
用户未更改元素值.因此,该值不当前存在的表(这是确定).
在Zend的验证文档谈论加入一个参数到NoRecordExists()验证从验证过程不包括记录的目的.想法是"验证表格以查找任何匹配的行,但忽略a字段具有此特定值的任何命中".这样的用例是在编辑表时验证元素所需的用例.在1.9中执行此操作的伪代码就是这样(实际上我从1.9源代码中得到了这个 - 我认为当前的文档可能是错误的):
$data = new Zend_Form_Element_Text('Data');
$data->addValidator( new Zend_Validate_Db_NoRecordExists('Test', 'Data',
array ('field'=>'Data', 'Value'=> $Value) );
Run Code Online (Sandbox Code Playgroud)
问题是要被排除的值($ Value)在实例化时被绑定到验证器(也就是在实例化表单时).但是当表单正在编辑记录时,当表单最初填充数据时,该值需要绑定到$ data字段的内容 - IE最初从Test表行读取Data值.但是在典型的Zend模式中,表单被实例化并在两个单独的步骤中填充,这排除了将排除值绑定到期望的元素值.
下面的Zend伪代码标记了我想要将$ Value绑定到NoRecordExists()验证器的位置(并注意这是一个常见的Zend控制器模式):
$form = new Form()
if (is Post) {
$formData = GetPostData()
if ($form->isValid($formData)) {
Update Table with $formData
Redirect out of here …Run Code Online (Sandbox Code Playgroud) javascript ×3
php ×3
jquery ×2
asp.net ×1
asp.net-mvc ×1
c# ×1
coding-style ×1
css ×1
dhtml ×1
email ×1
exception ×1
html ×1
image ×1
iterator ×1
lua ×1
lua-table ×1
oop ×1
python ×1
symfony-1.4 ×1
symfony1 ×1
variables ×1
web-config ×1
zend-db ×1