如果现在重要的是我正在使用MySQL/MyISAM,但我愿意使用PostgreSQL.我也愿意使用memcached.
考虑一个用于存储论坛帖子的表格:
id forum_name post_date
1 Hey! 2009-01-01 12:00:00
Run Code Online (Sandbox Code Playgroud)
我是不是该..
创建一个单独的表,如
id thread_id views
1 1 532
Run Code Online (Sandbox Code Playgroud)
或者将它保存为初始线程表中的列?
id forum_name post_date views
1 Hey! 2009-01-01 12:00:00 532
Run Code Online (Sandbox Code Playgroud)
另一个相关的小窍门,显示和增加页面浏览量的实用解决方案是什么?我读了这个帖子,似乎我只能缓存一段时间的值,我对增量部分并不十分清楚 - 也许就像将值存储在某个地方的平面文件中,然后定期用cronjobs更新数据库论坛视图每小时左右?
编辑: 澄清一下,投票就像SO一样,每个帖子一票,并且可以有逆转.没关系我对柜台的意思.
我知道序列化用于将数据类型转换为可存储的格式,用于缓存等目的.
我更具体地问的是,你应该在什么情况下实际决定存储数据(serialize()在PHP中使用,pickle在Python中使用模块等)?
假设我们有一个流量很大的网站,在我们的/blog页面中,我们使用静态内容xml文件,gettext mo文件和动态生成的数据库内容.
示例#1:
我们依赖静态内容的文件是en/blog.xml:
'<content><![CDATA[
<h1>Welcome to my blog!</h1>
<p>Lorem ipsum dolor sit amet..</p>
]]></content>'
Run Code Online (Sandbox Code Playgroud)
我们想要自己序列化这个xml文件并将其存储在缓存中吗?
示例#2:
我们还有一个动态生成的表单,通常我会假设我不会序列化任何东西,因为它是服务器端生成的和动态的,但我们的表单字段标签是国际化的,用户请求这个页面用西班牙语,因此我们使用的是翻译类.抓取以mo/csv/xml格式存储的表单字段标签.
内容contact-us.php:
<label for="first_name"><?php echo $L->_("First Name");?></label>
<input id="first_name" name="first_name" type="text">
Run Code Online (Sandbox Code Playgroud)
"First Name"消息id转换从应用程序级转换文件中提取,我们将其解析并存储在驻留在我们的转换类中的数组中.因此,我们的代码mo在每个页面请求上都不解析文件,而不是在解析mo之后序列化整个数组,然后依赖于序列化的转储,这将是理想的选择.
示例#3:
让我们在我们的博客页面上说我们正在阅读最近的5篇博文.
$posts = BlogClass->sql('SELECT blog_message, blog_author FROM blog_posts LIMIT 5 ORDER BY blog_date DESC');
Run Code Online (Sandbox Code Playgroud)
我们是否希望依赖于memcache之类的东西,只需设置一个键到sql语句的结果,它会序列化查询的结果,还是?
奖金:
如果有人能够提供有效/实际使用/错误使用序列化的具体示例,那就太好了 - 就像一个多页面,巨大的形式,可以提取数据库信息并将内容存储在会话中,或者任何示例你不得不依赖序列化..
基本上,我现在有login/在urls.py重定向到django.contrib.auth.views.login这似乎迎刃而解.
但是我正在移植来自遗留mysql/php网站的密码,我相信我应该根据http://docs.djangoproject.com/en/dev/topics/auth/#storing-additional-information创建一个新的模型配置文件.- 关于用户.这个新的模型/表将具有旧的md5密码列,我将把用户名移植到主用户表.
如何更改登录方法,以便我首先检查用户是否在auth_user表中有密码,如果没有,则md5 POST password字段并尝试将其与我的新配置文件密码列匹配,如果是,则将密码保存在新的auth_user表格由SHA1加密,就像管理员一样吗?
我基本上有一个预订引擎单位结果页面,必须显示40个单位,每个单位有1个大图像的第一个缩略图和X个随附的缩略图图像.
我一直在使用jquery延迟加载插件,但它不够彻底(我在DOM Ready上调用它),加上它在IE中不起作用(50%的客户端使用IE因此这是一个大问题) .
我认为我真正需要做的并不是真正吐出图像而是伪造的元素,例如跨度,并且可能修改我的代码,这样如果用户查看跨度,则将其渲染为图像元素.
<span src="/images/foo.gif">
Run Code Online (Sandbox Code Playgroud)
预订引擎依赖于JS,所以我想我可能只是依赖于ajaxifying所有缩略图并在窗口滚动等上有事件处理程序,以使页面"可用"并平均加载(2-3在高速DSL /电缆上使用秒而不是5到30秒.
我很欣赏任何例子或想法.
相关链接/发现可能有助于解决此问题:
#1:http://github.com/silentmatt/jquery_lazyload
jquery延迟加载的一个分支似乎解决了IE加载并增加了对容器的支持.
#2:youtube.com将一些视频的src设置为1x1透明gif,并在大约前10个结果之后设置延迟加载.
更新
#1:我们决定创建一个脚本来生成缩略图并对它们进行递归生成.我实现了它们.570个缩略图图像中的每一个都是60-120KB,而现在它们只有2 KB.由于570个并发请求,加载速度稍快但仍然很慢,即使延迟加载器插件到位,我也不确定它是否足够快地应用(即使在图像完全加载之前就准备好了DOM).虽然取得了一些进展.
我想在前10个单元之后生成1x1像素的GIF并且只是延迟加载它们.仍然需要研究一种技术.
我希望在两个javascript函数中共享值,但在第二个函数中,我无法从全局变量中获取值
// Following two are global variables
var grid;
var masterTable;
function GridCreated(sender, args)
{
grid = sender; // setting values
masterTable = sender.get_masterTableView(); // setting values - Here masterTable has values in it
masterTable.selectAllItems(true);
}
function abc()
{
debugger;
var collectionofordernumber = 0;
var selectedrows = mastertable.get_selecteditems(); // HERE I UNABLE TO GET THE VALUES FROM MASTERTABLE
for (var i = 0; i < selectedrows.length; i++)
{
var row = selectedrows[i];
var cell = mastertable.getcellbycolumnuniquename(row, "ordernumber")
collectionofordernumber = collectionofordernumber …Run Code Online (Sandbox Code Playgroud) 我正试图找到最近修改过的文件
find . -mtime 0
Run Code Online (Sandbox Code Playgroud)
哪能给我
en/content/file.xml
es/file.php
en/file.php.swp
css/main.css
js/main.js
Run Code Online (Sandbox Code Playgroud)
但我想过滤掉en和es目录,但想抓住别的东西.另外,我想.swp从结果中过滤掉文件.
所以我想回来:
css/main.css
js/main.js
xml/foo.xml
Run Code Online (Sandbox Code Playgroud)
除了所有其他文件未能于es/en中,而不是结束.swp
在Windows上,似乎当任何背景上有白色文本并且它确实转换时,文本在其opacity值切换回1时自然会变为某种绿色阴影.
这是有道理的.但有没有人知道任何类型的解决方法,以防止它转换到动画之间的绿色阴影,除了将文本的颜色从白色改为其他东西?
我在这里有一个完整的演示.
笔记:
cleartype:true cleartypeNoBg但据我所知,这只能解决IE7中的另一个问题.我愿意接受某种涉及不同动画风格(除了褪色)的解决方法,但是抛出你对我的任何想法.
编辑:想想我在这里发现了这个错误.
编辑#2:在这里看过渡.看起来像scrollRight可以代替淡入淡出.
python manage.py dumpdata modelName > file.json. meder在postgres上为用户创建了一个空数据库meder可以使用数据库settings.py试图,loaddata file.json但它抱怨超级用户不存在或不匹配...
回溯(最近一次调用最后一次):文件"manage.py",第11行,在execute_manager(settings)文件中"/srv/python-environments/saltycrane/lib/python2.5/site-packages/django/core/management/ init .py",第438行,在execute_manager utility.execute()文件"/srv/python-environments/saltycrane/lib/python2.5/site-packages/django/core/management/ init .py",第379行,在执行self.fetch_command(子命令).run_from_argv(self.argv)文件"/srv/python-environments/saltycrane/lib/python2.5/site-packages/django/core/management/base.py",第191行,在run_from_argv self.execute(*ARGS,**选项.字典)文件"/srv/python-environments/saltycrane/lib/python2.5/site-packages/django/core/management/base.py",第220行,执行输出= self.handle(*args,**选项)文件"/srv/python-environments/saltycrane/lib/python2.5/site-packages/django/core/management/commands/loaddata.py",第219行,在handle transaction.com中使用(using = using)文件" /srv/python-environments/saltycrane/lib/python2.5/site-packages/django/db/transaction.py",第199行,在commit connection._commit()文件"/ srv/python-environments/saltycrane/lib /python2.5/site-packages/django/db/backends/ init.com",第32行,在_commit中返回self.connection.commit()psycopg2.IntegrityError:在表上插入或更新"bugs_bug"违反外键约束"poster_id_refs_id_89e0243f"DETAIL:键(poster_id)=(1)不存在于表"auth_user".
我不应该同步syncdb吗?我应该为通用表格转储数据吗?我仍然在MySQL中完整的数据库但是会欣赏任何方向.
SIDENOTE:我确实south安装了.我--initial几天前做了命令.也许我也可以使用南方?
我试过cp initial.txt {foo,bar,baz}但得到baz的不是目录.而且cp initial.txt foo bar baz也不起作用.
有没有一种方法可以做到这一点,而无需制作shell脚本并多次循环和调用cp?我认为必须有一个简洁的方法来做到这一点.
使用插件@ http://products.solvercircle.com/woocommerce-one-page-quick-shop/quick-shop/
好像我在管理员中以普通用户身份登录,我可以将商品添加到购物车中.如果我作为访客添加到购物车但是它执行ajax请求并返回"1"但该项目从未添加到购物车.
有谁知道为什么会这样?我在网站上停用的其他2个插件我仍然可以重现这个,所以我相信这是这个插件中的一个错误.
编辑:我确认"客人可以结帐"设置框已应用,所以似乎不是这样.
编辑#2:这是添加到购物车fn:
function wqo_add_prod(pid,vid){
var qty= jQuery('#product_qty_'+vid).val();
if(qty==0){
jQuery('#wqo_alert_info').text('Out of Stock');
jQuery('#wqo_alert_info').show()
setTimeout(function(){jQuery('#wqo_alert_info').hide()}, 1500);
return false;
}
if(vid==0){
qty= jQuery('#product_qty_'+pid).val();
}
var ajax_url = 'http://DOMAIN.com/wp-admin/admin-ajax.php';
jQuery.ajax({
type: "POST",
url:ajax_url,
data : {
'action': 'wqo_addtocart',
'wqo_prod_id': pid,
'wqo_prod_var_id': vid,
'wqo_prod_qty': qty
},
success: function(response){
if(response==1){
jQuery('#wqo_alert_info').text('Added to your cart');
}else{
jQuery('#wqo_alert_info').text(response);
}
jQuery.ajax({
type: "POST",
url:ajax_url,
data : {'action': 'wqo_cart_amount'},
success: function(data){
jQuery('#wqo_cart_price').html(data);
}
});
jQuery('#wqo_alert_info').show()
setTimeout(function(){jQuery('#wqo_alert_info').hide()}, 2000);
}
});
}
Run Code Online (Sandbox Code Playgroud)
编辑#3: php回调的来源
function wqo_addtocart() …Run Code Online (Sandbox Code Playgroud) bash ×2
django ×2
javascript ×2
jquery ×2
animation ×1
cleartype ×1
find ×1
firefox ×1
jquery-cycle ×1
lazy-loading ×1
migration ×1
mysql ×1
php ×1
python ×1
sql ×1
woocommerce ×1
wordpress ×1