小编Sab*_* 錆兎的帖子

RxJS:shareReplay 中的 bufferSize 是什么?

我不明白bufferSize参数是什么意思,它有什么作用。

以下有什么区别?

var published = source
    .shareReplay();

var published = source
    .shareReplay(0)

var published = source
    .shareReplay(1);

var published = source
    .shareReplay(10);
Run Code Online (Sandbox Code Playgroud)

rxjs

6
推荐指数
2
解决办法
2925
查看次数

为什么显示“ld: framework not found Bolts”

安装 facebook sdk 后,当我构建我的项目时,它显示:

ld: warning: directory not found for option '-F/Users/liyuanliu/Library/Developer/Xcode/DerivedData/c5-dsovqtraubbdgxbqrmiexjmlysxq/Build/Products/Debug-iphonesimulator/Bolts'
ld: warning: directory not found for option '-F/Users/liyuanliu/Library/Developer/Xcode/DerivedData/c5-dsovqtraubbdgxbqrmiexjmlysxq/Build/Products/Debug-iphonesimulator/FBSDKCoreKit'
ld: warning: directory not found for option '-F/Users/liyuanliu/Library/Developer/Xcode/DerivedData/c5-dsovqtraubbdgxbqrmiexjmlysxq/Build/Products/Debug-iphonesimulator/FBSDKLoginKit'
ld: warning: directory not found for option '-F/Users/liyuanliu/Library/Developer/Xcode/DerivedData/c5-dsovqtraubbdgxbqrmiexjmlysxq/Build/Products/Debug-iphonesimulator/FBSDKShareKit'
ld: framework not found Bolts
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Run Code Online (Sandbox Code Playgroud)

但是当我安装 facebook 和 bolts 时,它显示我安装成功:

pod install
Analyzing dependencies
Downloading dependencies
Using Bolts (1.8.4)
Using FBSDKCoreKit (4.14.0)
Using FBSDKLoginKit (4.14.0)
Using FBSDKShareKit (4.14.0)
Using Firebase …
Run Code Online (Sandbox Code Playgroud)

facebook ios cocoapods bolts-framework

6
推荐指数
1
解决办法
9963
查看次数

如何将 django 项目划分为应用程序

我想知道如何将具有层次结构的项目划分为应用程序。假设我正在尝试构建类似 github.com 的东西。

在 github.com 中,一个帐户有一些存储库,这些存储库具有一些功能,例如代码、问题或拉取请求。并且这些特征引用了其他特征。在这种情况下,哪个是应用程序,哪个不是?那个时候,我应该把应用程序放在根目录还是作为子应用程序放在一个应用程序目录中?

django django-apps django-project-architect

6
推荐指数
2
解决办法
2144
查看次数

运行命令但留在 shell 中 vs 退出

我知道在 vim 中我可以输入

:terminal <command> %
Run Code Online (Sandbox Code Playgroud)

对当前编辑缓冲区中的文件运行命令。例如,为了简化我想要做的事情,让我们使用一个简单的 ls 命令:

:terminal ls %
Run Code Online (Sandbox Code Playgroud)

这将拆分窗口,运行命令并退出 shell,同时将输出留在屏幕上。那不是我想要的。我希望它运行命令,但将我留在 shell 中, 以便我可以运行更多可能与当前文件/操作相关的 bash 命令,然后在我完成后手动退出。

如果我只是输入

:terminal
Run Code Online (Sandbox Code Playgroud)

它把我带到了一个 bash shell,它允许我输入任意数量的命令,这很棒。但是我随后失去了使用 % 扩展工具的能力,以及从我正在编辑的文件中生成终端的便利性。IE。我失去了从原始文件/缓冲区产生的上下文的自动化,这意味着我必须手动输入当前文件名,包括可能的长路径和/或滚动以前的 bash 历史记录以重新运行原始命令。这是对击键的浪费。

基本上,我试图找到一种方法来创建一个 vim 映射,它允许我在 bash 命令中使用 % 文件名扩展,通过:term在命令运行后不结束作业(我更喜欢留在 shell 中的提示符处)继续会议!)

我实际上不在乎一个解决方案是否只是启动:termshell 并在 bash 提示符下用 % 文件名扩展回显我的命令而不输入它..这将允许我在我用手动马车执行命令后仍然留在 bash返回。

我不确定我想做的事情是否可行?请注意,我不希望暂停我当前的编辑会话和 fg,因为它会绑定当前的编辑会话。我不确定 tmux - vim 集成是否可以提供一种方法来做我想做的事,尽管我更喜欢直接找到解决方案,:term因为它是一个内置功能并且运行良好,除了我想要做的达到 :)

vim shell terminal

6
推荐指数
1
解决办法
3292
查看次数

Python 递归函数如何与 tri_recursion 函数一起工作?

我是 Python 新手,我发现下面的递归程序很难遵循。在调试程序时,我发现它会经历递归,并且k每次递归时值都会递减-1。在某个时刻k为 -1,编译器移动到该else部分并返回 0。

最后k结果是1,这是怎么回事呢?

def tri_recursion(k):
  if(k>0):
    result = k+tri_recursion(k-1)
    print(result)
  else:
    result = 0
  return result

print("\n\nRecursion Example Results")
tri_recursion(6)
Run Code Online (Sandbox Code Playgroud)

和输出:

Recursion Example Results  
1  
3  
6  
10  
15  
21  
Run Code Online (Sandbox Code Playgroud)

python recursion

6
推荐指数
1
解决办法
1万
查看次数

在 Javascript 中解析 Django DateTimeField

我使用 Django Rest 框架构建了后端 API,其中模型具有 DateTimeField。

date = models.DateTimeField(auto_now_add=True)
Run Code Online (Sandbox Code Playgroud)

当我从 API 获取数据到 React 时,我得到这样的信息

2019-01-20T19:24:58.674435Z
Run Code Online (Sandbox Code Playgroud)

我怎样才能在javascript中解析它并将其转换为可读的形式?

javascript python django reactjs

6
推荐指数
1
解决办法
2208
查看次数

has_object_permission 未调用

我查看了关于同一主题的类似问题,我认为我遵循了为has_object_permission.

这就是我在我的设置中所拥有的。

REST_FRAMEWORK = {
    
    'DEFAULT_PERMISSION_CLASSES': [
        'rest_framework.permissions.IsAuthenticated',
        'users.permissions.CanAccessData', # this is my custom class
    ],    
    ... 
}
Run Code Online (Sandbox Code Playgroud)

这是我的权限类

class CanAccessData(permissions.BasePermission):
    message = 'You do not have permission to perform this action.'

    def has_permission(self, request, view):
        print "has_permission`"
        return True

    def has_object_permission(self, request, view, obj):
        print "has_object_permission"
        return False
Run Code Online (Sandbox Code Playgroud)

这是我的视图结构:

class CompleteList(generics.ListCreateAPIView):
    permission_classes = (CanAccessData,)
    serializer_class = SomeSerializer
    model = Some
    filter_backends = (filters.OrderingFilter, filters.SearchFilter)
    ordering_fields = (tuple of Some fields)
    search_fields = ordering_fields
    ordering = …
Run Code Online (Sandbox Code Playgroud)

django django-permissions django-rest-framework

6
推荐指数
1
解决办法
2707
查看次数

无法启动调度程序

我是 Python 新手,并尝试按照本教程在我的 Mac 中安装 Airflow

虽然这两个命令工作正常:

$ airflow initdb
$ airflow webserver -p 8080
Run Code Online (Sandbox Code Playgroud)

调度器命令(airflow scheduler)抛出以下错误:

 [2020-02-18 13:18:09,012] {scheduler_job.py:1382} ERROR - Exception when executing execute_helper Traceback (most recent call last):

  File "/Users/mac/Workspace/airflow/airflow_venv/lib/python3.8/site-packages/airflow/jobs/scheduler_job.py", line 1380, in _execute
    self._execute_helper()

  File "/Users/mac/Workspace/airflow/airflow_venv/lib/python3.8/site-packages/airflow/jobs/scheduler_job.py", line 1413, in _execute_helper
    self.processor_agent.start()

  File "/Users/mac/Workspace/airflow/airflow_venv/lib/python3.8/site-packages/airflow/utils/dag_processing.py", line 554, in start
    self._process.start()

  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/multiprocessing/process.py", line 121, in start
    self._popen = self._Popen(self)

  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/multiprocessing/context.py", line 224, in _Popen
    return _default_context.get_context().Process._Popen(process_obj)

  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/multiprocessing/context.py", line 283, in _Popen
    return Popen(process_obj)

  File …
Run Code Online (Sandbox Code Playgroud)

pip scheduler python-3.x airflow

6
推荐指数
1
解决办法
1720
查看次数

如何在更长的时间内“发送密钥”到画布元素?

我的目标:

我正在尝试制作一个 python 机器人来赢得chrome 的恐龙游戏

游戏允许两种类型的跳跃:

  • 短距离跳跃
  • 跳远

使用main_body.send_keys(Keys.SPACE)(如下面的代码所示)给出了短跳转。

我的问题:

我很难执行跳远。

我的做法:

目前,对于跳远,我正在使用该Keyboard库:

keyboard.press(keyboard.KEY_UP)

不幸的是,这要求浏览器窗口始终处于焦点。稍后,我希望无头地运行这个程序,所以这种方法行不通。

或者:

我试过ActionChains

ActionChains(driver) \
.key_down(Keys.SPACE) \
.pause(0.2) \
.key_up(Keys.SPACE) \
.perform()
Run Code Online (Sandbox Code Playgroud)

但这最终会滚动整个页面。并且没有达到预期的目的。

我只是希望直接将这些操作“发送”到画布元素,而不是在整个页面上执行它们...

我希望做这样的事情

main_body.key_down(Keys.SPACE) 
time.sleep(0.2)
main_body.key_up(Keys.SPACE) 
Run Code Online (Sandbox Code Playgroud)

虽然这当然会给我这个错误:AttributeError: 'FirefoxWebElement' object has no attribute 'key_down'因为canvas没有属性key_downkey_up.

这是一个 MCVE:

注意在代码中,恐龙会不断跳跃,但这不是重点,这只是为了检查跳跃的高度而不是赢得比赛。

main_body.key_down(Keys.SPACE) 
time.sleep(0.2)
main_body.key_up(Keys.SPACE) 
Run Code Online (Sandbox Code Playgroud)

请给别人注释掉代码,看看每种跳转的效果。

如果可能的话,建议一些其他的替代方法,在不使用Keyboard和不滚动整个页面的情况下进行跳远......

python selenium canvas selenium-webdriver keyboard-python

6
推荐指数
1
解决办法
1008
查看次数

使用 Nginx 和 Docker 部署 React 和 Django

我正在尝试使用 Nginx 和 Docker 部署我的 React 构建和 Django API。我对部署仍然很陌生,并且从未托管过将投入生产的网站,所以我有点不知所措。

\n

现在我的 Django API 在端口 8000 上运行,React 应用程序在端口 3000 上运行。我希望使用 Nginx 根据 URL 将 IP 地址定向到 React 应用程序或 Django API。

\n

一些例子:

\n\n
\n

这是我的项目结构:

\n
.\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 docker-compose.yml\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 front-end\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 Dockerfile\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 README.md\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 debug.log\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 node_modules\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 package-lock.json\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 package.json\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 public\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 src\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 yarn.lock\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 housing_dashboard_project\n\xe2\x94\x82\xc2\xa0\xc2\xa0 …
Run Code Online (Sandbox Code Playgroud)

deployment django nginx docker reactjs

6
推荐指数
1
解决办法
7596
查看次数