文件上传似乎是一种变异.它通常伴随着其他数据.但它是一个很大的二进制blob,所以我不确定GraphQL如何处理它.如何将文件上传集成到使用Relay构建的应用程序中?
我想允许用户一次下载多个大文件的存档.但是,文件和存档可能太大而无法存储在我的服务器的内存或磁盘上(它们可以动态地从其他服务器流入).当我将其传输给用户时,我想生成存档.
我可以使用Tar或Zip或其他最简单的东西.我正在使用django,它允许我在我的响应中返回一个生成器或类文件对象.该对象可用于泵送过程.但是,我无法弄清楚如何围绕zipfile或tarfile库构建这种东西,我担心它们可能不支持读取文件,或者在构建时读取存档.
将迭代器转换为类文件对象的答案可能有所帮助. tarfile#addfile采用迭代,但它似乎立即传递给shutil.copyfileobj,所以这可能不像我希望的生成器友好.
当我在我的mac上运行时:
import logging.handlers
logger = logging.getLogger(__name__)
logger.setLevel(logging.DEBUG)
syslog_address = '/var/run/syslog'
logger.addHandler(logging.handlers.SysLogHandler(syslog_address))
logger.error("What the crap?")
Run Code Online (Sandbox Code Playgroud)
它在syslog中显示如下:
Oct 18 19:02:06 nick Unknown[4294967295] <Error>: What the crap?
Run Code Online (Sandbox Code Playgroud)
为什么它是未知的?在剧本名称之后,它不应该足够聪明吗?
给定空间中的任意点序列,您将如何在它们之间产生平滑的连续插值?
欢迎使用2D和3D解决方案.产生以任意粒度的点列表的解决方案以及为贝塞尔曲线产生控制点的解决方案也是值得赞赏的.
另外,看到一个迭代解决方案可以在接收到点时接近曲线的早期部分,这很酷,所以你可以用它绘制.
允许我的Phonegap应用程序浏览到也使用Phonegap API的一些外部站点.目前我有条件地包括Phonegap javascript基于你在哪个平台(Android,iOS等).但是,我无法区分Phonegap应用程序与移动设备上的常规浏览器之间的区别.有没有办法在我的Phonegap应用程序中更改用户代理,以便为我的服务器提供有关此内容的提示?
最感兴趣的是iOS解决方案.
想让你的javascript知道一个特定的dom节点对应于数据库中的记录似乎很常见.你是怎么做到的?
我看到的一种常见方法是使用类的类和id的id:
<div class="thing" id="5">
<script> myThing = select(".thing#5") </script>
Run Code Online (Sandbox Code Playgroud)
虽然这有一个轻微的HTML标准问题 - 如果您在页面上有多种类型的记录,您可能最终会复制ID.但那没有什么坏处,是吗?
另一种方法是使用数据属性:
<div data-thing-id="5">
<script> myThing = select("[data-thing-id=5]") </script>
Run Code Online (Sandbox Code Playgroud)
这解决了重复的ID问题,但它确实意味着您必须处理属性而不是ID,这有时更加困难.你们有什么感想?
什么是一个很好的算法来减少多边形中的顶点数量而不改变它看起来非常多的方式?
输入:一个多边形,表示为一个点列表,具有太多的顶点:例如来自鼠标的原始输入.
输出:具有少得多的顶点的多边形,看起来仍然像原始的一样:例如可用于碰撞检测的东西(不一定是凸起的).
编辑:对此的解决方案类似于在图表上找到最佳拟合的多分段线.它在我的算法书中被称为分段最小二乘法.
Edit2:道格拉斯Peucker算法是我真正想要的.
你会怎么做到的?
列表中的项目可以对应于集合中的记录,并且它们在列表中的位置可以对应于每个记录上的字段(可能是"等级"),当"停止"事件发生时,该字段必须被更新.
Meteor会与jQueryUI Sortable很好地配合吗?如果多个用户尝试一次拖动和排序相同的列表会发生什么?Meteor是否需要定制的排序行为?
我在我的搜索中找到了计算几何算法库,用于将凹多边形分解为最小数量的凸组件.链接网站和众多谷歌搜索结果表明它有python绑定,这将非常方便,但所有链接都已死!这是怎么回事?我现在在哪里可以得到它?
我在Flask应用程序中使用了很多werkzeug.local.LocalProxy对象.它们应该是对象的完美替身,但它们并不是真的,因为它们没有正确响应type()或instanceof().
SQLAlchemy完全不喜欢它们.如果我将LocalProxy创建为SQLAlchemy记录,则SQLAlchemy会将其视为None.如果我将LocalProxy传递给更简单的类型,它只是说它是错误的类型.
这是Flask-SQLAlchemy使用LocalProxy时间不好的一个例子.
你们怎么处理这个问题?只需调用_get_current_object()很多?如果SQLAlchemy或Flask-SQLAlchemy可以更自然地自动处理这些LocalProxy对象,那将是非常酷的,特别是考虑到Flask-Login使用它们,并且几乎每个人都使用它,对吧?
我正在考虑将这个函数添加到我的项目来处理它,并在将它们传递给sqlalchemy之前将我的任何本地代理包装在其中:
from werkzeug.local import LocalProxy
def real(obj):
if isinstance(obj, LocalProxy):
return obj._get_current_object()
return obj
Run Code Online (Sandbox Code Playgroud)