小编Car*_*rel的帖子

如何创建Git属性文件

我想描述一个属性文件添加到我的Git仓库在这里.它表明我应该包含.gitattributes在我的存储库的根文件夹中.

  • .gitattributes一种简单的文件还是文件夹?如何创建此文件/文件夹?

    Windows引发以下错误:

    "无法创建没有文件名的文件"

    "你必须输入文件名"

  • 应该在哪里添加文件?在存储库根目录下,X:\PATH\TO\Repository\还是Git文件夹下,X:\PATH\TO\Repository\.git\

  • 是否会为其他贡献者强制执行克隆/分配我的存储库的属性?

    例如,如果我推送到GitHub或GitLab并且其他一方下拉了副本,那么我添加的属性也会在他们的机器上执行吗?

相关: Git Ignore

注意:如果有帮助,我在Windows平台上使用TortoiseGit和msysgit.

git gitattributes

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

Sphinx和可重复使用的Django应用程序

问题

在尝试为可重用的Django应用程序生成sphinx文档时,我发现了以下snafoo.当sphinx解析model.py代码时,它会被试图访问Django 项目设置的代码所阻挠.由于这是一个独立/可重用的应用程序,因此没有提供这些设置的主项目,即没有ROOT/PROJECT/PROJECT/settings.py文件.

建立

为了清楚起见,这就是我所做的.遍历通常的项目文件夹cd ROOT/PROJECT并创建一个生成以下结构的应用程序 django-admin startapp APPLICATION

/ROOT/
  /PROJECT/
    /APPLICATION/ 
      admin.py
      apps.py
      models.py
      tests.py
      views.py
Run Code Online (Sandbox Code Playgroud)

注意:没有/ROOT/PROJECT/PROJECT/*.py文件,因为我没有导航到文件夹cd root并使用通常可能的方式创建项目django-admin createproject.

接下来创建sphinx文档,spinx-quickstart docs生成以下附加结构.

/ROOT/
  /PROJECT/
    /docs/
      /source/ 
        ...
        conf.py
      make.bat
Run Code Online (Sandbox Code Playgroud)

那就是文档旁边的文档APPLICATION.

如果没有文件,我可以放置什么conf.py来正确加载应用程序settings.py

家庭作业

在尝试解决这个问题时,我已经仔细阅读了许多SO问题,博客和Django文档,但没有找到简洁的解决方案.因为这已经被问了几次之前我想要激励它不会被重复关闭,如果建议的副本中的答案使用其中一个片段作为解决方案.

python django documentation python-sphinx

16
推荐指数
1
解决办法
773
查看次数

使用Android的导航组件时在backstack上列出fragments

我正在尝试调试一些代码,并希望在 Android 中列出当前后台堆栈中的片段。库存解决方案是简单地从支持经理中列出它们,因此从活动中方法中:

Log.i("fragments","Count : " + supportFragmentManager.fragments.toString())
Run Code Online (Sandbox Code Playgroud)

但是,将它与 Android 的导航组件一起使用只会列出导航主机片段。

... I/fragments: [NavHostFragment{b1a2d20 (f8ec2420-b534-42df-89f0-0cb189610a26) id=0x7f080001}]
Run Code Online (Sandbox Code Playgroud)

SO 例如Sergii Suvorov 的一些答案提供了以下替代方案:

Log.i("fragments","Count : " + supportFragmentManager.findFragmentById(R.id.NAVIGATION)?.childFragmentManager?.fragments.toString())
Run Code Online (Sandbox Code Playgroud)

这对我来说只是返回 null

... I/fragments: null
Run Code Online (Sandbox Code Playgroud)

片段方法中,我可以调用以下内容

Log.i("fragments", fragmentManager?.fragments.toString())
Run Code Online (Sandbox Code Playgroud)

它确实返回了所需的结果

... I/fragments: [FirstFragment{1475645 (3bb8566b-22b0-4c98-82ea-566e18915145) id=0x7f080001}]
Run Code Online (Sandbox Code Playgroud)

然而,我不知道如何从活动中做到这一点,也许有人知道魔法咒语?

navigation android android-fragments kotlin android-components

8
推荐指数
0
解决办法
1721
查看次数

我是否必须将get/set方法放在matlab的类定义中?

是否有人强制将所有get和set函数放在Matlab的类定义文件中?

我问,因为这确实使文件有点乱,并且失败了拥有类定义文件夹的目的.

matlab class getter-setter

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

Python Overlays:猴子补丁的一个案例

我试图在python中包装/猴子补丁模块.我正在尝试开发一种干净的实现方法,不会干扰任何现有的代码.

问题

给出一个CLASS从a 导入一些的脚本MODULE

from MODULE import CLASS 
Run Code Online (Sandbox Code Playgroud)

我想换MODULE另一个_MODULE_._MODULE_原始补丁在哪里MODULE?我能看到的最干净的界面如下.

from overlay import MODULE # Switches MODULE for _MODULE
from MODULE import CLASS   # Original import now uses _MODULE_
Run Code Online (Sandbox Code Playgroud)

这基本上是猴子修补模块,就像猴子补丁类,函数和方法一样.我相信如果这样做是正确的,那么可以用项目特定的方式一致地修补代码.

实现这个的最佳方法是什么?

python monkeypatching python-import

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

在继承QAbstrctitemModel时,使用Lists作为QModelIndex中的internalPointer,PyQt

我正在尝试在Python中用QAbstractItemModel包装List,以允许我使用PyQt附带的GUI优点将列表视为树.确切地说,我正在使用PyQt5和Python 3.3.

我试图显式生成列表项的指针,但后来很难识别父项.我没有分配它们,我不确定在执行createIndex时PyQt是如何分配它们的.然后我决定重写代码以明确地识别使用索引(行值)访问的项目,例如给定嵌套列表["A",["a",[1,2,3]],"B", "C",["b",[4,5,6],"d"]]然后我可以使用[4,1,1]指向5,然后使用相同的列表减去最后一项来检索父项,[4,1].

我的问题是这个.当我从行值使用列表生成时,CREATEINDEX方法崩溃代码.我的最小破损示例(MBE)如下.在其中取消注释两行"return self.createIndex(row,col,ptr)"以查看我描述的分解.

from PyQt5.QtGui     import QFont, QColor
from PyQt5.QtCore    import QAbstractItemModel, QModelIndex, Qt, QAbstractListModel, QAbstractTableModel, QSize, QVariant
from PyQt5.QtWidgets import QApplication, QTreeView, QTableView, QListView

class NodeTree(QAbstractItemModel) :
 def __init__(self,parent,data) :
  super(NodeTree,self).__init__(parent)
  self.data   = data

 def rowCount(self, parent = QModelIndex()) :
  # int rowCount (self, QModelIndex parent = QModelIndex())
  if parent.isValid() :
   data = self.data
   for idx in parent.internalPointer() :
    data = data[idx]
   return len(data)
  else : 
   return len(self.data)  

 def columnCount(self, parent = QModelIndex()) :
  # int …
Run Code Online (Sandbox Code Playgroud)

python list qabstractitemmodel pyqt5

2
推荐指数
1
解决办法
2890
查看次数

将 MutableList 包装在 LiveData 或 MutableLiveData 中

MutableList将 a 包装在LiveDataor中的建议方法是什么MutableLiveData,以便可以修改列表并观察它所发生的变化?

我在 Room 中有一些相当短的表(<20 个项目)(它缓存从服务器检索的值)。我想保留这些项目的可变子集;用作其他更大表的查询中的过滤器。我的想法是将 a 分配给我的应用程序中的模型类,并通过将此类包装在或 中MutableList来使其可观察。然后,通过更新这些选择中的项目,我可以触发大型表上的必要查询。MutableLiveDataLiveData

目前我的代码具有以下结构,我已在问题中将其精简为我认为相关的内容。最终我想keyset在更复杂的查询中使用多个。我的简化模型文件如下,

class Model(application : Application) : AndroidViewModel(application)
{
  val keys    : LiveData<List<Key>>
  val keyset  : LiveData<MutableList<Key>>
  val values  : LiveData<List<Value>>
  init {
    keys   = repository.keys
    values = repository.values
    keyset = mutableListOf<Key>() // I'm not entirely sure how to instantiate LiveData<MutableList<Key>>
  }
}
Run Code Online (Sandbox Code Playgroud)

它依赖于存储库,

class Repository(private val queryset : QuerySet)
{
   val keys   : LiveData<List<Key>>   = queryset.getKeys()
   val values : …
Run Code Online (Sandbox Code Playgroud)

kotlin android-livedata mutablelivedata mutablelist

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