假设我有一个像这样的LESS CSS目录结构:
less/
core/
_main.less
header.less
body.less
footer.less
contact/
_main.less
form.less
details.less
Run Code Online (Sandbox Code Playgroud)
我想编写一个Gulp任务,它将_main.less
在less/
dir的每个子目录中查找文件,将其传递给gulp-less并将输出写入css/
dir,如下所示:
css/
core.css
contact.css
Run Code Online (Sandbox Code Playgroud)
因为_main.less
包含其目录中的其他文件,只_main.less
需要解析文件,但我希望输出文件具有其所在目录的名称.
到目前为止我有这个:
gulp.src('less/*/*/_main.less')
.pipe(less())
.pipe(gulp.dest('css'));
Run Code Online (Sandbox Code Playgroud)
但是这将创建一个这样的目录结构:
css/
core/
_main.css
contact/
_main.css
Run Code Online (Sandbox Code Playgroud)
但这不是我想要的.我正在考虑使用正则表达式匹配目录名称,将其返回到matches
var中,并相应地重命名该文件.像这样的东西:
gulp.src(/less\/[^\/]+\/([^\/]+)\/_main.less/)
.pipe(less())
.pipe(rename(function(context) {
context.src.matches[1] + '.css'
}))
.pipe(gulp.dest('css'));
Run Code Online (Sandbox Code Playgroud)
这段代码只是一个例子.我无法弄清楚如何做这样的事情,或者甚至可能.
这可能吗?如果是这样,怎么样?
我是Python的新手,我不确定放置用户定义的异常的最佳位置是什么,以及在哪里捕获它们.
例如,我有一个启动游戏的程序,当游戏停止时,会引发用户定义的异常(StopGame).我应该从游戏外捕获这个异常,因为游戏正在抛出这个异常.虽然,例外是特定于游戏,所以异常的定义应该在游戏模块(或者游戏包?)中.
这是程序的简单布局:
计划结构:
__main__.py
game/
__init__.py
game.py
Run Code Online (Sandbox Code Playgroud)
_ _main_ _ .py
import game
def main():
g = game.Game()
try:
g.start()
except game.StopGame:
print '\nbye bye!'
if __name__ == '__main__':
main()
Run Code Online (Sandbox Code Playgroud)
game/_ _init_ _ .py
from game import Game
from game import StopGame
Run Code Online (Sandbox Code Playgroud)
游戏/ game.py
class Game:
def start(self):
try:
a = raw_input('do you want to play?\n')
print 'cool'
except (KeyboardInterrupt, EOFError):
raise StopGame
if a == 'no':
raise StopGame
else:
print 'cool'
class StopGame(Exception):
pass
Run Code Online (Sandbox Code Playgroud)
这段代码工作正常,我只是不确定这是要走的路.我觉得有点令人失望的是我应该使用这个设置导入game/_ …
在我的Django项目上进行开发时,我得到一个DatabaseError,它说:
当前事务被中止,命令被忽略直到事务块结束
我知道这是因为没有回滚的PostgreSQL事务很糟糕,并且可以在PostgreSQL错误日志中找到此错误事务中的错误.但是,如果在Django错误页面上显示此错误,我认为会更方便.然后你可以直接看到问题所在.
那么,是否有可能在Django错误页面上获得这些PostgreSQL错误?如果是这样,怎么样?
我正在尝试获取某些 HTML 的第一张图像。我知道如何使用 for 循环实现所有图像。不过,我挣扎着爬只是第一个。
我有以下代码:
function get_first_image_b() {
global $post, $posts;
ob_start();
ob_end_clean();
$html= $post->post_content;
$doc = new DOMDocument();
@$doc->loadHTML($html);
$img = $doc->getElementsByTagName('img');
print_r($img);
}
Run Code Online (Sandbox Code Playgroud)
哪个吐出来:
(
[length] => 4
)
Run Code Online (Sandbox Code Playgroud)
有谁知道我如何将第一个变成字符串/或可用的东西?