小编Mob*_*een的帖子

获取模块“google.protobuf.descriptor_pool”在我的python脚本中没有属性“默认”

我是 python 新手,正在使用其他人编写的 python 脚本。我在另一台电脑上运行得很好。只是要安装软件包包括轿跑车pip3google-cloudgoogle-cloud-bigquerypandas

现在,当我在不同的 PC 上安装相同的软件包时,我无法运行该脚本。首先显示以下错误:

module = 'google.protobuf.descriptor_pb2' TypeError: expected bytes, Descriptor found
Run Code Online (Sandbox Code Playgroud)

但是,当在清除/重新安装/更新的软件包中并添加 protobuf3 和 protobuf-py3 软件包时,错误已更新为以下消息:

from google.cloud import bigquery
  File "/home/mobeen/.local/lib/python3.6/site-packages/google/cloud/bigquery/__init__.py", line 35, in <module>
    from google.cloud.bigquery.client import Client
  File "/home/mobeen/.local/lib/python3.6/site-packages/google/cloud/bigquery/client.py", line 50, in <module>
    import google.cloud._helpers
  File "/home/mobeen/.local/lib/python3.6/site-packages/google/cloud/_helpers.py", line 33, in <module>
    from google.protobuf import duration_pb2
  File "/home/mobeen/.local/lib/python3.6/site-packages/google/protobuf/duration_pb2.py", line 8, in <module>
    from google.protobuf import symbol_database as _symbol_database
  File "/home/mobeen/.local/lib/python3.6/site-packages/google/protobuf/symbol_database.py", line 193, in <module>
    _DEFAULT …
Run Code Online (Sandbox Code Playgroud)

python pip protocol-buffers python-3.x google-bigquery

9
推荐指数
2
解决办法
8217
查看次数

我如何获取附件的URL存储在Rails控制器的活动存储中

如何获取我的has_one模型附件的URL,该附件存储在Rails控制器的活动存储中。因此,我将能够将其作为完整链接发送为json中的api。到目前为止,我已经尝试了以下方法,但是每种方法都存在各种问题:

1)current_user.image.service_url ----#的未定义方法`service_url'

2)Rails.application.routes.url_helpers.rails_disk_blob_path(current_user.image,only_path:true),它给我的输出是:

"/rails/blobs/%23%3CActiveStorage::Attached::One:0x007f991c7b41b8%3E"
Run Code Online (Sandbox Code Playgroud)

但这不是网址,对吗?我无法在浏览器上点击图像。

3)url_for ----

undefined method `active_storage_attachment_url' for #<Api::V1::UsersController:0x007f991c1eaa98
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails rails-api rails-activestorage ruby-on-rails-5.2

5
推荐指数
2
解决办法
4859
查看次数