我正在建立一个需要维护案例跟踪系统的服务.这是我们的模型:
class Incident(models.Model):
title = models.CharField(max_length=128)
category = models.ForeignKey(Category)
status = models.ForeignKey(Status)
severity = models.ForeignKey(Severity)
owned_by = models.ForeignKey(User, related_name="owned_by", null=True, blank=True)
next_action = models.ForeignKey(IncidentAction)
created_date = models.DateTimeField()
created_by = models.ForeignKey(User, related_name="opened_by")
last_edit_date = models.DateTimeField(null=True, blank=True)
last_edit_by = models.ForeignKey(User, related_name="last_edit_by", null=True, blank=True)
closed_date = models.DateTimeField(null=True, blank=True)
closed_by = models.ForeignKey(User, related_name="Closed by", null=True, blank=True)
Run Code Online (Sandbox Code Playgroud)
因为有很多外键被引入这个模型,所以它会产生有趣的sql查询.我们一直在使用djblets数据网格和django调试工具栏作为试用版,并且每次为使用外键的视图添加新列时,每次查询的查询数量都很惊人,它基本上是这种类型的查询工作流程
#prepare the grid
select * from incident_table;
#render each row
for each row in incident table
for each column that is a foreign key select …Run Code Online (Sandbox Code Playgroud) 当我尝试使用ID加载实体时:
Session.Load<User>(21);
Run Code Online (Sandbox Code Playgroud)
我得到一个'没有给定标识符存在的行'.
在我的代码中,我检查null如:
if(user == null)
Run Code Online (Sandbox Code Playgroud)
我怎么想知道该行是否不存在,或者如何让它返回null呢?
我正在为不同的客户使用PostgreSQL模式开发多租户rails应用程序.Rails迁移不适用于开箱即用的多个模式,所以我做了以下rake任务来迁移所有模式,它似乎工作.我的问题是,如果其他人实施了更好,更优雅的解决方案.我也很高兴有一个很好的教程,包括使用多个模式的PostgreSQL的rails代码示例.到目前为止,我只找到了关于这个主题的一个很好的演讲http://aac2009.confreaks.com/06-feb-2009-14-30-writing-multi-tenant-applications-in-rails-guy-naor.html和我的目标是tomayko.com/writings/rails-multiple-connections的一个例子
desc 'Migrates all postgres schemas'
task :schemas do
# get all schemas
env = "#{RAILS_ENV}"
config = YAML::load(File.open('config/database.yml'))
ActiveRecord::Base.establish_connection(config[env])
schemas = ActiveRecord::Base.connection.select_values("select * from pg_namespace where nspname != 'information_schema' AND nspname NOT LIKE 'pg%'")
puts "Migrate schemas: #{schemas.inspect}"
# migrate each schema
schemas.each do |schema|
puts "Migrate schema: #{schema}"
config = YAML::load(File.open('config/database.yml'))
config[env]["schema_search_path"] = schema
ActiveRecord::Base.establish_connection(config[env])
ActiveRecord::Base.logger = Logger.new(STDOUT)
ActiveRecord::Migrator.migrate('db/migrate', ENV["VERSION"] ? ENV["VERSION"].to_i : nil)
end
end
Run Code Online (Sandbox Code Playgroud) 我正在使用Google Charts在我的应用程序中显示图表数据.有时谷歌很慢,图表需要一段时间才能加载.这种情况似乎是一种常见的模式 - 所以我想知道什么是显示临时图像的好方法,而图像是从Google传送的.我可以访问jQuery - 并且已经看到了许多"预加载"插件.这是我需要的吗?
这个场景/模式的正确术语是否真的称为"图像预加载"?
我很想听听人们用来解决这种情况的方法.
谢谢
我正在制作一个社区维基,因为我会欣赏人们的方法而不一定是答案.
我处于这样的情况,我有很多查找类型数据字段,不会改变.一个例子是:
年薪工资
选择:0 - 25K
期权:25K - 100K
期权:100K +
我希望通过枚举轻松获得这些选项,但也希望在DB中提供文本值,因为我将报告文本值而不是ID.此外,由于它们是静态的,我不想调用DB.
我想在枚举和表格中重复这个,但是想听一些其他的想法.
谢谢
这是我正在使用的代码:
using (StreamWriter output = new StreamWriter(Path.Combine(masterdestination, "Master.txt")))
{
string masterfolders = sourcefolder1;
string[] filess = Directory.GetFiles(masterfolders, "*.txt");
foreach (string file in filess)
{
output.WriteLine(Path.GetFileName(file));
}
}
Run Code Online (Sandbox Code Playgroud)
此代码将搜索用户指定目录中任何txt文件的所有文件.这些目录有时包含2百万个文件.
在它运行时监视这个过程我已经看到它爬升到800MB的内存使用量.有没有办法可以保持这个过程的速度并限制它使用的内存?或者让它读取并转储并继续?哈希表?任何想法都会很棒.
对于某些函数我想在函数中创建一个字符串的副本,然后操纵它 - 由于一些奇怪的原因,我不能strcpy工作(给我一个分段错误) - 我也尝试将arg作为字符串传递,这也不起作用(g ++抛出一个错误,说它期望一个char*)
#include <iostream>
#include <cstring>
using namespace std;
void copy_string(char* stri);
int main ()
{
copy_string("sample string");
return 0;
}
void copy_string(char* stri) {
char* stri_copy;
strcpy(stri_copy, stri);
cout << "String: " << stri_copy;
}
Run Code Online (Sandbox Code Playgroud)
我不确定我明白为什么会这样.
所以我的两个问题是:
谢谢!
我有一个名为的表Cat,以及一个名为的PHP类Cat.现在我想要CatDataMapper上课,这样Cat extends CatDataMapper.
我希望Data Mapper类提供执行ORM以及创建,编辑和删除Cat的基本功能.
为此目的,也许能够很好地了解这种模式的人可以给我一些有用的建议吗?我觉得提供一些函数如update(),delete(),save()会有点太简单了.
我意识到数据映射器有这个问题:首先你创建了Cat的实例,然后初始化所有变量,如name,furColor,eyeColor,purrSound,meowSound,atte者等等.在设置好所有内容之后,你调用save( )函数,它继承自CatDataMapper.这很简单;)但现在,真正的问题是:你在数据库中查询猫并获得一个包含大量猫数据的无聊结果集.
PDO具有一些ORM功能来创建Cat实例.让我说我使用它,或者甚至说我有一个带有关联数组的mapDataset()函数.但是,只要我从数据集中获取Cat对象,就会有冗余数据.同时,20个用户可以从数据库中获取相同的cat数据并编辑cat对象,即重命名cat,并保存()它,而另一个用户仍然可以设置另一个furColor.当所有人都保存他们的编辑时,一切都搞砸了.
呃...好吧,保持这个问题非常简短:这里有什么好的做法?
当用户离开我的网站的一个页面时,应该有一条警告消息,使用户可以选择留在页面上:
"你确定要关闭这个页面吗?"
下一页是内部页面还是外部页面并不重要.
我认为这可以使用onUnload事件处理程序完成,不是吗?
<body onunload="confirmClose()">
Run Code Online (Sandbox Code Playgroud)
然后,confirmClose()函数必须显示一个带有两个按钮的消息框,以便用户可以选择"Really leave"或"Stay".
function confirmClose() {
return confirm('Really leave this page?')
}
Run Code Online (Sandbox Code Playgroud)
但是这个功能无法阻止卸载吧?
你有解决我的问题的方法吗?提前致谢!
在我正在使用的网站上,我们有两类他们可以要求的更改.一方面,他们有一些我必须重建和重新部署的东西.他们将这些视为"停机时间"的变化,因为我们会显示一个漂亮的小闪屏,当我们回来时我们会彻底测试网站.
另一方面,他们要求我们进行一些文本更改,打开和关闭功能等,我们已将其隔离到web.config.我们提供在部署窗口内部或外部执行这些操作 - 我们只需编辑文件,检查更改是否正确,然后返回工作.
但客户端的一个聪明人指出,编辑web.config会回收应用程序池,这就是那里的停机时间.我从来没有注意到,但我认为这是正确的 - 当应用程序池不可用时,应用程序是"关闭".
但是持续多久?我不是要求您通过停机间隔来分析客户的舒适程度,但这是一个共同的观点吗?或者我们不应该担心web.config编辑是否伴随着应用程序停机的第二或两次?
c# ×2
asp.net ×1
c++ ×1
c-strings ×1
confirm ×1
datamapper ×1
django ×1
downtime ×1
enums ×1
html ×1
iis ×1
javascript ×1
jquery ×1
migration ×1
multi-tenant ×1
nhibernate ×1
orm ×1
php ×1
postgresql ×1
sql ×1
web-config ×1
xhtml ×1