我已经阅读了Bill Karwin关于单表继承的一些答案,并认为这种方法对我正在考虑的设置有好处:
Playlist
--------
id AUTO_INCREMENT
title
TeamPlaylist
------------
id REFERENCES Playlist.id
teamId REFERENCES Team.id
UserPlaylist
------------
id REFERENCES Playlist.id
userId REFERENCES User.id
PlaylistVideo
-------------
id
playlistId REFERENCES Playlist.id
videoId REFERENCES Video.id
Run Code Online (Sandbox Code Playgroud)
所有CASCADE选项都设置DELETE为在Playlist删除a时正常工作,但是,如果删除User或Team删除会发生什么?
即.如果User被删除,在行UserPlaylist会被删除,但被引用的行中Playlist,并PlaylistVideo仍将保留.我考虑过强制执行此操作,TRIGGER AFTER DELETE但无法知道删除请求是否因为Playlist已删除或删除而导致User.
在这种情况下,强制执行诚信的最佳方法是什么?
编辑(提供ERD)

mysql referential-integrity single-table-inheritance polymorphic-associations cascading-deletes
我必须要有一些简单的东西.我正在尝试获取元素的索引但仍然保持-1.
HTML:
<div id="rating_boxes">
<img src="/img/ratingbox.gif" class="ratingbox" alt="Rate this Speech" />
<img src="/img/ratingbox.gif" class="ratingbox" alt="Rate this Speech" />
<img src="/img/ratingbox.gif" class="ratingbox" alt="Rate this Speech" />
<img src="/img/ratingbox.gif" class="ratingbox" alt="Rate this Speech" />
<img src="/img/ratingbox.gif" class="ratingbox" alt="Rate this Speech" />
<img src="/img/ratingbox.gif" class="ratingbox" alt="Rate this Speech" />
<img src="/img/ratingbox.gif" class="ratingbox" alt="Rate this Speech" />
<img src="/img/ratingbox.gif" class="ratingbox" alt="Rate this Speech" />
<img src="/img/ratingbox.gif" class="ratingbox" alt="Rate this Speech" />
<img src="/img/ratingbox.gif" class="ratingbox" alt="Rate this Speech" />
</div>
Run Code Online (Sandbox Code Playgroud)
jQuery的:
$("img.ratingbox").hover(function() {
var index …Run Code Online (Sandbox Code Playgroud) 有一天,一位朋友告诉我,在软件开发生命周期中修复问题的成本存在一个金字塔.我在哪里可以找到这个?
他指的是解决问题的成本.
例如,
在需求阶段解决问题成本1.
在开发阶段解决问题成本为10.
在测试阶段解决问题成本为100
在生产阶段解决问题成本为1000.
(这些数字只是例子)
如果有人参考,我会有兴趣看到更多相关信息.
是否可以阻止用户在IE中输入文件输入文本框?我问的原因是,如果用户输入的文本看起来不像文件系统路径(例如,不是以c:...开头),那么当用户点击提交按钮时,不会发生任何事情.
我要么不允许用户输入框或让表单正常提交.
我发现同样的问题在这里被问到没有答案:http: //www.webmasterworld.com/html/3290988.htm
如果没有其他合适的答案,这个人想出了一个我可以使用的黑客:http: //www.shauninman.com/archive/2007/09/10/styling_file_inputs_with_css_and_the_dom
编辑:澄清 - 如果用户在"浏览"按钮旁边的文本框中键入"不是文件路径"并单击提交,则在IE中不会发生任何事情.表单将不会提交 - 当<input type ="file">框没有真正的文件路径时,IE不允许提交表单.
我有一个动态表单,用户提供名称和描述:
<label>Name</label><br />
<input type="text" name="name[]" maxlength="255" /><br />
<label>Description</label><br />
<textarea name="desc[]"></textarea><br />
Run Code Online (Sandbox Code Playgroud)
我正在尝试使用Javascript验证表单,以确保如果指定了名称,则必须输入说明.
$("input[name='name[]']").each(function() {
var index = $("input[name='name[]']").index(this);
if ($(this).val() != '') {
alert($("textarea[name='desc[]']").get(index).value);
alert($("textarea[name='desc[]']").get(index).val());
}
}
Run Code Online (Sandbox Code Playgroud)
第一个alert()按预期工作但是我得到第二个警告:$("textarea [name ='desc []']").get(index).val()不是函数
有什么不同?为什么我不能使用jQuery函数?
是否可以将预准备语句的结果设置为变量?我试图创建以下存储过程,但它失败了:
第31行的错误1064(42000):SQL语法中有错误; 检查与MySQL服务器版本对应的手册,以便在'stmt USING @m,@ c,@ a附近使用正确的语法;
DROP PROCEDURE IF EXISTS deleteAction;
DELIMITER $$
CREATE PROCEDURE deleteAction(
IN modul CHAR(64),
IN controller CHAR(64),
IN actn CHAR(64))
MODIFIES SQL DATA
BEGIN
PREPARE stmt FROM 'SELECT id
FROM actions
WHERE `module` = ?
AND `controller` = ?
AND `action` = ?';
SET @m = modul;
SET @c = controller;
SET @a = actn;
SET @i = EXECUTE stmt USING @m, @c, @a;
DEALLOCATE PREPARE stmt;
DELETE FROM acl WHERE action_id = @i; …Run Code Online (Sandbox Code Playgroud) mysql variables stored-procedures prepared-statement mysql-error-1064
作为一名开发人员多年来,我应该知道这一点,但事实并非如此.
我正在一个小团队中发布一个已发布的产品.我是提交大部分代码的主要开发人员,但还有一些其他开发人员不时提交.目前,我们有一个运行Hudson CI的登台服务器,它在每次提交后构建.当中继线稳定并经过测试时,通过简单的svn up命令手动更新生产.
这通常工作正常,但是当代码未在主干中最终确定时,我们确实有需要紧急/紧急更改生产的情况.
如何设置回购以适应这种情况?我认为这个回复是一个很好的回复,但它仍然有点过头了.
我在想,在更新生产时,在该版本中创建一个分支.但是,如果我需要进行紧急生产修复,我该如何访问该分支,如何通过从该分支而不是中继来更新生产?如何确保生产分支的任何紧急修复程序也已提交到主干?
即.这是我希望有更好的解决方案的情况,因为它已经发生了几次
更新:
阅读完SVN Book的分支部分后,我正在考虑以下设置.
准备好推进生产时创建分支
svn copy /trunk /branches/production_01 -m 'Production release'
在生产时,切换到生产分支
svn switch /branches/production_01
如果需要紧急修复,开发人员需要在分支中进行更改:
svn checkout /branches/production_01
// make changes
svn merge /trunk # make sure changes get merged into trunk as well
svn commit -m 'Urgent fix
在制作时,更新到最新的分支
svn update
这个过程听起来像我们的设置吗?
我需要通过网关机器连接到EC2实例.密钥文件存储在网关机器上.以下ssh命令连接我:
ssh -t gateway ssh ec2
Run Code Online (Sandbox Code Playgroud)
但是,在我的fabfile中,我有以下设置:
env.hosts = ['ec2.<snip>.compute.amazonaws.com']
env.gateway = 'gateway'
Run Code Online (Sandbox Code Playgroud)
但是在连接到ec2时它会提示我输入密码.
该故障排除指南说,以"ssh -t"要执行的命令.当我这样做时,它的工作原理:
local> ssh -t gateway ssh ec2.compute.amazonaws.com /bin/bash -l -c "uname -a"
Linux
Connection to gateway closed.
Run Code Online (Sandbox Code Playgroud)
这是面料和paramiko调试信息:
local> fab --show=debug uname
Using fabfile '/home/matt/.../fabfile.py'
Commands to run: uname
Parallel tasks now using pool size of 1
[ec2-.compute.amazonaws.com] Executing task 'uname'
[ec2-.compute.amazonaws.com] run: /bin/bash -l -c "uname -a"
Creating new gateway connection to 'gateway'
DEBUG:paramiko.transport:starting thread (client mode): 0xb6e50dd0L
INFO:paramiko.transport:Connected (version 2.0, client …Run Code Online (Sandbox Code Playgroud) 是否可以设置一个表单的ForeignKey字段的查询集,以便它将采用单独的查询集并将其输出为<optgroup>?
这是我有的:
views.py
form = TemplateFormBasic(initial={'template': digest.template.id})
form.fields['template'].queryset = Template.objects.filter(Q(default=1) | Q(user=request.user)).order_by('name')
Run Code Online (Sandbox Code Playgroud)
在我的模板模型中,我有默认模板和用户创建的模板.我希望它们在<select>盒子中明显分开,例如.
<select>
<optgroup label="Default Templates">
<option>Default 1</option>
<option>Default 2</option>
</optgroup>
<optgroup label="User Templates">
<option>User Template 1</option>
<option>User Template 2</option>
</optgroup>
</select>
Run Code Online (Sandbox Code Playgroud)
可以这样做吗?
有没有办法在CakePHP中执行转换为IN条件的find()?似乎find()方法只需要一个值来搜索.
我想做这样的事情:
$this->User->findAllById(array(1, 5, 7));
Run Code Online (Sandbox Code Playgroud)
这会将SQL转换为:
SELECT * FROM users WHERE id IN (1, 5, 7);
Run Code Online (Sandbox Code Playgroud) jquery ×2
mysql ×2
branch ×1
cakephp ×1
deployment ×1
django ×1
django-forms ×1
fabric ×1
file ×1
filepath ×1
html ×1
indexing ×1
input ×1
javascript ×1
paramiko ×1
python ×1
repository ×1
ssh ×1
svn ×1
variables ×1