问题标签 [module]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2388 浏览

module - 在 Sitefinity 中创建一个新模块

我正在尝试为 Sitefinity 创建一个新模块。我的模块基于链接到文档的示例模块。http://www.sitefinity.com/help/developer-manual/adding-modules-pluggable-explained.html

我想要的是一个视频列表。在左侧 - 命令面板 - 应该有 3 个按钮 - “视频”、“艺术家”和“流派”。

无论何时选择其中任何一个,在右侧,都应显示视频/艺术家/流派列表。

这个概念很简单,但我正在努力解决的是实际放置代码的位置。

我应该将列表直接硬编码到 CommandPanel.ascx 中吗?我应该为视频、艺术家和流派创建新控件吗?或者我应该有一个控件和多个面板,我可以显示/隐藏它们?以及如何连接左侧的菜单项和更改右侧的面板?

注意。将视频、艺术家和流派都放在左边可能是错误的。也许它应该只是“视频”,而艺术家和流派应该是单独的模块?

我不需要一个完整的答案,只需要一些关于如何在这个框架中编码的方向,以及一切应该去哪里。

0 投票
1 回答
3566 浏览

python - 如何使用 distutils 安装 Python 扩展模块?

我正在开发一个名为“lehmer”的 Python 包,其中包括一堆用 C 编写的扩展模块。目前,我有一个扩展模块“rng”。我正在使用 Python 的 Distutils 来构建和安装模块。我可以编译和安装模块,但是当我尝试使用import lehmer.rngor导入模块时from lehmer import rng,Python 解释器会抛出ImportError异常。我可以很好地导入“lehmer”。

这是我的setup.py文件的内容:

当我列出 Pythonsite-packages目录的内容时,我看到以下内容:

我的PYTHONPATH环境变量设置正确,所以这不是问题(如前所述,我可以import lehmer很好,所以我知道PYTHONPATH不是问题)。Python 使用以下搜索路径(由 报告sys.path):

更新

在 OpenSUSE 10 机器上使用时它可以工作,但在 Mac OS X 上测试时仍然无法加载 C 扩展。以下是 Python 解释器的结果:

0 投票
6 回答
222 浏览

c# - 创建要出售的广泛项目

我将从头开始一个 C# 项目,该项目将包含几个模块,因此它可以通过现有 PHP/ASP/MySQL/Oracle/MS SQL 应用程序的模块出售,该应用程序管理显示 3D 对象并创建 2D 和 3D CAD 文件来自用户可以用来创建所有东西的网络应用程序。

我的问题是,从零开始,从“销售”的角度出发,它应该是我应该实现的一种很好的编程方法、设计模式、单元测试等......我怎么知道如何应用它们,有没有什么好的教程/“给我指路”有点像了解这些事情,比如......

  • 我应该使哪些类可以被客户端覆盖,以便我可以在我们的模块中提供可扩展性?
  • 我应该使用什么样的“包装”来“销售”?DLL、CAB、微星?
  • 我应该使用 SubSonic / NHibernate 以便用户可以生成自己的 DAL?我们的原型实现将仅使用 Oracle。

我现在有点迷路,我知道该怎么做,但不知道如何完成它(记住这个完美的编码路径)。

任何好的编程想法都很高兴:)

0 投票
3 回答
1118 浏览

asp.net - 为什么 url 重写不起作用?

在 asp.net 3.5 中,我正在重写 url

http://www.abc.com/archive/1108/harpersdecember

到以下

http://www.abc.com/article.aspx?docId=78

我正在使用这段代码来做到这一点:

它在本地运行良好,但是当我上传到远程 Web 服务器时,我在尝试引用上述页面时得到 404。有什么建议为什么它可以在本地工作但不能在远程工作?

0 投票
10 回答
149421 浏览

ruby - 我可以在不包含 Ruby 模块的情况下调用实例方法吗?

背景:

我有一个模块,它声明了许多实例方法

我想从一个类中调用其中一些方法。你通常如何在 ruby​​ 中执行此操作是这样的:

问题

include UsefulThings从中引入所有方法UsefulThings。在这种情况下,我只想要format_text并且明确地不想要get_fileand delete_file

我可以看到几个可能的解决方案:

  1. 以某种方式直接在模块上调用该方法,而不在任何地方包含它
    • 我不知道如何/是否可以做到这一点。(因此这个问题)
  2. 不知何故包括Usefulthings并且只引入它的一些方法
    • 我也不知道如何/是否可以做到
  3. 创建一个代理类,包含UsefulThings在其中,然后委托format_text给该代理实例
    • 这会起作用,但匿名代理类是一种黑客攻击。呸。
  4. 将模块拆分为 2 个或更多更小的模块
    • 这也可行,并且可能是我能想到的最好的解决方案,但我宁愿避免它,因为我最终会得到几十个模块的扩散——管理这将是繁重的

为什么单个模块中有很多不相关的功能?它ApplicationHelper来自一个 Rails 应用程序,我们的团队实际上已决定将其作为任何不具体到不属于其他任何地方的东西的垃圾场。主要是随处使用的独立实用程序方法。我可以把它分解成单独的助手,但是会有 30 个,每个都有 1 种方法......这似乎没有生产力

0 投票
7 回答
12507 浏览

php - 有没有办法从 php 中在沙箱中执行 php 代码

我想从 php 执行一个 php 脚本,它将使用不同的常量和已定义的不同版本的类。

是否有一个沙箱 php_module 我可以:

代替

还是proc_open()是唯一的选择?

PS:该脚本无法通过网络访问,因此 fopen(' http://host/script.php ') 不是一个选项。

0 投票
1 回答
1477 浏览

ruby - 为什么在 Ruby 中包含模块的顺序会有所不同?

这个问题最好用一个代码示例来概括:

我认为当你包含一个模块(例如Bar在一个类Foo中)时,Ruby 存储的所有内容都是Foo包含Bar. 因此,当您在 Foo 上调用方法时,它会查找Bar该方法。

如果那是真的,那么到TestTwo::Quux.new.foo被调用的时候,我已经把这个foo方法混入了TestTwo::Bar,所以它应该可以工作,对吧?

0 投票
10 回答
26040 浏览

perl - 当我使用模块时,如何找到 Perl 加载的文件?

在 Perl 中,当我这样做时use <module name> <ver>;,系统会在路径.pm中的某处找到库的文件。@INC

是否有可靠的方法来实际加载哪个文件?

0 投票
2 回答
9308 浏览

python - 导入特定于版本的 python 模块的最佳方法

哪种方法最适合在 python 中导入特定于版本的模块?我的用例是我正在编写将部署到 python 2.3 环境中并在几个月内升级到 python 2.5 的代码。这:

或这个

我知道这两种情况都同样正确并且可以正常工作,但哪种情况更可取?

0 投票
3 回答
1977 浏览

python - 如何使用 python 模块的多个 git 分支?

我想使用 git 来处理我正在同时编写的模块中的多个功能。我目前正在使用 SVN,只有一个工作区,所以我的 PYTHONPATH 上只有一个工作区。我意识到这不太理想,所以我想知道是否有人可以提出一种更“正确”的方式来做到这一点。

让我用一个假设的情况来详细说明:我说我有一个模块“eggs”,带有子模块“foo”和“bar”。'bar' 中的组件使用 foo 中的代码,因此 eggs/bar/a.py 可能会“导入 egg.foo”。

假设“eggs”在 git 存储库中。我想尝试对“foo”进行一些更改,所以我复制了它。问题是eggs/bar 中的'import eggs.foo' 在PYTHONPATH 中找到了原始存储库,所以它最终使用旧的'foo' 而不是我修改过的。

我如何设置自己,使模块的每个副本都使用自己关联的“foo”?谢谢。

编辑-感谢指向相对导入的指针。我已经阅读了它,我可以看到如何应用它。我在使用它时遇到的一个问题是我已经建立了一个相当大的代码库,而且我对它并不太了解,所以大多数模块if __name__ == '__main__':在read 不使用相对导入:

我可以用谷歌搜索的另一个解决方案是故意操纵 sys.path,这似乎是一个更糟糕的黑客攻击。还有其他可能吗?

编辑 - 感谢您的建议。我最初误解了 git 分支,所以指出的分支正是我想要的。尽管如此,我之前没有听说过相对进口,所以也谢谢你。我学到了一些新东西,可能会结合它的用途。