我想在数据库中存储博客文章.我认为拥有不同版本的数据会很不错,就像版本控制对文本文件一样.
所以,我想它就像一个表中的一行,有版本控制.因此,例如,您可以检索该行的最新版本或先前版本.你甚至可以从那一行开始分支.
有这样的事吗?
可能有用的信息:我目前正在使用Python,Django和MySQL.我正在试验MongoDB
编辑为清晰/更多上下文:我正在寻找一个更适合行的"版本控制"而不是数据库的解决方案; 我对分支整个数据库并不感兴趣.例如,我将能够在2011年1月1日和2010年1月1日查询博客文章的内容(无需切换数据库).
我想删除数据框中的所有行.
我想这样做的原因是我可以用迭代循环重建数据帧.我想从一个完全空的数据帧开始.
或者,如果可能的话,我可以仅从列/类型信息创建一个空df
似乎我可以从远程存储库中拉出或推送到一个分支,从/到我正在处理的分支.如果是这样,那么远程跟踪分支的目的是什么?
它只是为了检查分支并看到它的样子吗?看起来远程跟踪分支就像是远程分支的镜像.
仅供参考:我对git很新,但已阅读并重新阅读了许多教程,但我仍然不清楚这一点!
谢谢!
def size(number):
if number<100:
return Small()
if number<1000:
return Medium()
return Big()
def size1(number):
if number<100:
return Small()
elif number<1000:
return Medium()
else:
return Big()
Run Code Online (Sandbox Code Playgroud)
关于编码风格:我经常使用前者当下面的块,或者最后一个块是一大块代码.它似乎有助于提高可读性.
当各种块具有贯穿它们的共同概念时,我通常使用后者(如上面的情况).常见的缩进有助于沟通他们的关系.
这两个值得注意的是否有任何差异(尤其是表现明智)?
我经常收到这个错误: ProgrammingError: The cursor's connection has been closed.
在尝试执行查询之前,有没有办法检查我正在使用的连接是否已关闭?
我正在考虑编写一个包装器来执行查询.首先,它将检查连接是否关闭,如果是,它将重新连接.这是一种可行的方法吗?
以下是否有任何显着差异?
raise Exception("some exception")
assert False, "some exception"
Run Code Online (Sandbox Code Playgroud) 在 Jinja2 中,宏和包含看起来几乎做同样的事情。
例如
{% macro input(name, value='', type='text') -%}
<input type="{{ type }}" value="{{ value|e }}" name="{{ name }}">
{%- endmacro %}
{{ input('password', type='password') }}
-- versus --
{% include 'input.html' %}
input.html file>
<input type="{{ type }}" value="{{ value|e }}" name="{{ name }}">
Run Code Online (Sandbox Code Playgroud)
为了阐明它们的用途:
我在json编码无限时遇到了麻烦.
json.dumps将它转换为"Infinity",但我希望它将它转换null为我选择的另一个值.
不幸的是,default如果转储尚未理解该对象,则设置参数似乎也有效,否则默认处理程序似乎被绕过.
有没有一种方法可以预编码对象,更改类型/类编码的默认方式,或者在正常编码之前将某个类型/类转换为不同的对象?
我正在尝试设置x刻度标签,但允许matplotlib决定在哪里放置刻度线.不幸的是,当我设置x刻度标签时,matplotlib将仅使用标签字符串作为已显示的刻度.
例:
import matplotlib.pyplot as plt
fig = plt.figure()
ax = fig.add_subplot(111)
xs = range(26)
ys = range(26)
ax.plot(xs, ys)
ax.set_xticklabels(list('abcdefghijklmnopqrstuvwxyz'))
plt.show()
Run Code Online (Sandbox Code Playgroud)
这给出了:
这对我来说是非常不直观的; 我希望标签与他们展示的点相对应.(但我可以理解,当绘制不使用相同x值的多个系列时,此行为更有用.)
注意:我不希望所有26个字母都作为刻度.相反,我只想要6(如matplotlib建议的那样),但那些6应该适合他们的位置.这样就可以轻松更改图形尺寸,而无需手动重新计算新的刻度标签.
我怎样才能达到预期的效果?
python ×6
mongodb ×2
mysql ×2
coding-style ×1
database ×1
flask ×1
git ×1
jinja2 ×1
json ×1
matplotlib ×1
odbc ×1
pandas ×1
postgresql ×1
pyodbc ×1
templates ×1