小编hl0*_*37_的帖子

如何在linux程序和运行Wine(同一台计算机)的Windows程序之间共享内存?

有没有办法(以及如何)在Linux程序和运行葡萄酒的Windows程序之间共享内存?

由于可能很难理解为什么要做这样的事情,我告诉你我的情况:我有一个仅为windows编译的专有程序,但是这个程序有一个开放的C插件API.但是,我想让我的代码的一部分在本机应用程序上运行(并使用其他库和Li​​nux的其他优点),并以快速的方式执行IPC

c c++ linux wine ipc

13
推荐指数
2
解决办法
1790
查看次数

如何使用 vuex 正确处理可编辑的复杂对象(嵌套)?

Vuex 非常适合显示复杂的数据,并进行复杂的变更(比如向树添加一个节点,对整个商店的影响等),但是,对我来说,处理“简单”的变更感觉就像一个痛苦的过程在复杂的物体上。

我面临的一个用例是(非常)简单:我有一个显示列表对象(具有嵌套属性和数组)的组件。每个属性都是可编辑的。每个对象都显示一个子组件。(我需要在叶子属性上使用 v-model)

另一个用例是使用组件的方法打开的模态对话框,它将允许编辑对象的某些属性/嵌套属性(而且,我需要在叶属性上使用 v-model)

目前,这就是我所做的:在显示/编辑对象的组件中,我放入了组件的data可编辑对象的“骨架”(具有所有嵌套属性的对象,但所有叶子都设置为null)。然后,当模态打开时,或者组件应该显示/使一个对象可编辑时,我只需将对象(使用递归函数)深度复制到一个对象data,然后我查看带有deep选项 to的数据true,并提交每个更改。

这感觉有点不对,需要付出很大的努力才能让它发挥作用。

我喜欢突变可追溯系统,我希望每次对嵌套属性进行修改时提交整个对象。如果不用编写如此多的代码就可以实现,那真的很棒(我想知道为了一个简单的全局 Vue 组件商店而放弃 vuex 是否不值得......并权衡漂亮的突变系统对于简单的代码)

那么是否有“标准”方式或“推荐方式”......或者只是一种“智能”方式来做到这一点而不需要这样的努力?

商店状态示例:

state = {
  foo : [
    bar : {
      users : [
        {
          name : '',
          adddr : '',
          needs : ['a', 'b', 'c'],
          baz : [
            {
              k1 : v1,
              k2 : v2,
              k3 : [1,2,3,4,5],
            },
            //...
          ]
        },
        //...
      ]
    }
  ]
}
Run Code Online (Sandbox Code Playgroud)

...我想每次都提交整个用户。

vuex vuejs2

11
推荐指数
2
解决办法
6889
查看次数

捆绑安装错误,意外':'

我知道网上有很多问题或类似问题,但它不适合我的情况.我正在安装redmine,当我打电话时bundle install,我收到此错误:

[!] There was an error parsing `Gemfile`: compile error - syntax error, unexpected ':', expecting $end
gem 'tzinfo-data', platforms: [:mingw, :x64_mingw, :mswin, :jruby]
                            ^. Bundler cannot continue.
Run Code Online (Sandbox Code Playgroud)

错误在这一行(前缀为一个->):

   source 'https://rubygems.org'

   if Gem::Version.new(Bundler::VERSION) < Gem::Version.new('1.5.0')
     abort "Redmine requires Bundler 1.5.0 or higher (you're using #{Bundler::VERSION}).\nPlease update with 'gem update bundler'."
   end

   gem "rails", "4.2.3"
   gem "jquery-rails", "~> 3.1.3"
   gem "coderay", "~> 1.1.0"
   gem "builder", ">= 3.0.4"
   gem "request_store", "1.0.5"
   gem "mime-types"
   gem "protected_attributes"
   gem "actionpack-action_caching" …
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails

7
推荐指数
1
解决办法
5589
查看次数

如何检查变量是否为 ctypes 类型?

我想检查变量是否是类型ctypes。在文档中,声明它们都继承了该ctypes._CData类型。但是,这是一个非公共类(并且阻止使用isinstanceor issubclass)。

那么推荐的方法是什么?

这对于类型提示和参数类型检查也很有用

python ctypes

6
推荐指数
0
解决办法
907
查看次数

如何在 Vue.js 3 中访问动态引用标记的 html 元素?

使用Vue.js 2 API的成分,你有一个.ref对属性setupContext的参数setup()。正如许多文章和在这个线程指出:https://github.com/vuejs/composition-api/issues/226这将成为vue.js 3可用,您应该声明同名的属性裁判-ed 元素:

<div ref='name'/>

setup() {
  return {
    name : ref(null)
  }
}
Run Code Online (Sandbox Code Playgroud)

但是,当您不知道 ref 名称时怎么办setup()

像这个“最小”示例:

<div v-for="e in elements" @click="elements.push({name:Math.random(), content:Math.random()})">
  <div :ref="e.name">e.content</div>
</div>

setup(){
   return {
     a_function_called_later(){
       // I can use this.$refs but is there a more "vuejs3" way to do it ?
     }
     // ...???
   }
}
Run Code Online (Sandbox Code Playgroud)

vuejs3

5
推荐指数
1
解决办法
1569
查看次数

如何在django admin中更改模型中字段的display_list中的标签?

我有一个模型,其中一些字段带有 verbose_name。这个冗长的名称适合管理编辑页面,但对于列表页面来说绝对太长了。

如何设置管理页面使用的标签list_display

python django label django-admin displaylist

5
推荐指数
1
解决办法
930
查看次数

Django 无法在“默认”以外的其他数据库中创建超级用户

这是一个错误还是我错了?我正在创建一个超级用户,但 django 想要在错误的数据库中创建一个表,尽管我的路由器似乎可以工作:

设置.py

DATABASES = {
      'intern_db': {
        'ENGINE': 'mysql.connector.django',
        'NAME': 'django_cartons',
            'USER': 'root',
            'PASSWORD' : '',
      },
    'default': {
        'ENGINE': 'mysql.connector.django',
        'NAME': 'cartons',
            'USER': 'root',
            'PASSWORD' : '',
    }
}

DATABASE_ROUTERS = ['web.routers.AuthRouter']
Run Code Online (Sandbox Code Playgroud)

路由器.py

class AuthRouter(object):
      """
      A router to control all database operations on models in the
      auth application.
      """
      def db_for_read(self, model, **hints):
            """
            Attempts to read auth models go to auth.
            """
            print("READ ",model._meta.app_label)
            if model._meta.app_label in ['auth', 'contenttypes', 'admin', 'sessions']:
               print(True)
               return 'intern_db'
            return …
Run Code Online (Sandbox Code Playgroud)

python django multi-database

4
推荐指数
1
解决办法
5982
查看次数

如何使用 `type()` 内置函数传递类关键字参数?

class语句采用各种功能的关键字参数。例如,该__init_subclass__函数接收在类声明中传递的关键字参数:

class A(object):
  def __init_subclass__(cls, **kwargs):
    print(f'{kwargs=}')

class B(A, my_arg=5):
  pass
Run Code Online (Sandbox Code Playgroud)
kwargs={'my_arg': 5}
Run Code Online (Sandbox Code Playgroud)

但是,这样做会阻止动态类创建:该type函数似乎不采用class关键字参数。工厂函数可以,但__init_subclass__在工厂必须修改类时可能会发生冲突或类似。

我想type()在其 3 参数版本中使用内置函数来动态创建一个类。但是,似乎没有记录的方法来传递关键字参数(如my_arg前面的示例)。

推荐的做法是什么?

python

4
推荐指数
1
解决办法
77
查看次数

为什么不能在带有模板的派生类中使用基类的别名?

考虑以下C ++代码:

template<typename Session>
class Step
{
public:
   using Session_ptr = boost::shared_ptr<Session>;
protected:
   Session_ptr m_session;
public:
   inline Step(Session_ptr session) : 
      m_session(session)
   {}

};

template<typename Socket>
class Session
{
public:
   Socket a;

   Session(Socket _a):
      a(_a)
   {}
};

template <typename Socket>
class StartSession : public Step<Session<Socket> >
{
protected:
   Session_ptr m_session; //Unknown type Session_ptr
public:
   inline StartSession(Session_ptr session) :
      Step<Session<Socket> >(session)
   {}

   void operator()(const boost::system::error_code& ec);
};

template <typename Socket>
class StartSession2 : public Step<Session<Socket> >
{
protected:
   typename Step<Session<Socket> >::Session_ptr m_session; …
Run Code Online (Sandbox Code Playgroud)

c++ templates c++11 type-alias

3
推荐指数
1
解决办法
1263
查看次数

是否可以将undefined用作Object属性名称?

javascript是否允许这样做?

a = {undefined : 1}
console.log(a[undefined])
Run Code Online (Sandbox Code Playgroud)

[编辑]我想我有点被python的习惯弄糊涂了,但是我实际上是这样的:

a = {[undefined] : 1}
console.log(a[undefined])
Run Code Online (Sandbox Code Playgroud)
请注意,它的工作原理是相同的:undefined将其转换为字符串(就像您通过此synthax传递的任何值一样),最终定义了"undefined"prop

[/编辑]

如果是这样,是否所有浏览器都以相同的方式处理它,并且在标准中明确指定了它?

[编辑]

注意: 该问题与“未定义”变量略有不同,即使基本原因和答案相同,该变量也可以用作具有“未定义”属性名称的对象的键。我在一个上下文中问undefined“似乎是值undefined还是字符串"undefined"?”,而链接的问题清楚地表示"undefined"为道具名称,并询问与关键字的名称冲突。

...而且我认为它可以帮助其他习惯使用Python或其他语言的程序员使用类似json的object / dict / hash synthax

[/编辑]

javascript ecmascript-5 ecmascript-6

3
推荐指数
1
解决办法
67
查看次数