是否有一种pythonic方法来执行该str.strip()方法所做的事情,除了所有事件,而不仅仅是字符串开头和结尾处的事件?
例:
>> '::2012-05-14 18:10:20.856000::'.strip(' -.:')
>> '2012-05-14 18:10:20.856000'
Run Code Online (Sandbox Code Playgroud)
我想要
>> '::2012-05-14 18:10:20.856000::'.crazy_function(' -.:')
>> '20120514181020856000'
Run Code Online (Sandbox Code Playgroud)
Python是否为我提供了内置的crazy_function???
我可以轻松地以编程方式执行此操作,但我想知道是否有内置功能.找不到一个.谢谢您的帮助.
谢谢你的时间.
我在Django 1.4上,我有以下代码:它是我的Quest模型的重写保存方法.
@commit_on_success
def save(self, *args, **kwargs):
from ib.quest.models.quest_status_update import QuestStatusUpdate
created = not self.pk
if not created:
quest = Quest.objects.get(pk=self)
# CHECK FOR SOME OLD VALUE
super(Quest, self).save(*args, **kwargs)
Run Code Online (Sandbox Code Playgroud)
我找不到这样做的聪明方法.对于我正在更新的对象进行新查询以找出旧的实例值,对我来说似乎非常愚蠢.
有一个更好的方法吗?
谢谢你们.
弗朗西斯科
我正在尝试重新定义auth.User模型的管理页面.一切都正常,除了一件事.检查以下代码:
from django.contrib import admin
from django.contrib.auth.models import User
from access.models import UserProfile
class UserProfileInline(admin.StackedInline):
model = UserProfile
class UserAdmim(admin.ModelAdmin):
inlines = [UserProfileInline,]
list_display = ['id', 'username', 'get_full_name', 'email']
admin.site.unregister(User)
admin.site.register(User, UserAdmim)
Run Code Online (Sandbox Code Playgroud)
如您所见,我希望在模型页面列表中显示的一个字段 - 由list_display- 定义- 是get_full_name.问题是管理员中的列标签显示为获取全名.
我的问题很简单:我可以覆盖这个吗?如果是这样,怎么样?
谢谢你的帮助.
我在我的C#Specflow测试项目中至少有3个.feature文件,例如:
Given I am at the Home Page
当我第一次在文件中编写步骤Feateure1.feature并创建步骤方法时,我将它放在一个步骤文件中,比方说Steps1.cs,它继承自初始化a的基类FirefoxDriver.我的所有StepsXXXX.cs类都继承自这个基类.
然后,我写了Feature2.feature,这也有一步Given I am at the Home Page.而且这个步骤是自动绑定的Steps1.cs
"直到现在,没问题.这就是我想要的 - 在整个测试项目中拥有可重复使用的步骤.但问题是,每当我运行一个包含不同StepsXXXX文件步骤的场景时,我就会运行各种浏览器实例.
======
我很确定这是因为我的StepsXXXX(绑定类)都继承自这个具有自己的IWebDriver的基类,并且在调用步骤时,其他所有内容(包括之前/之后的场景方法)都是调用.但我无法弄清楚如何解决这个问题.
我仍然想要可重复使用的步骤.我试图将这些步骤放在基类中,但它不起作用.我也考虑过更改绑定,但是specflow使用有意义的字符串来执行此操作,我不想将它们更改为误导性字符串.
有没有人偶然发现了这个?任何帮助都非常感谢.
我的问题很简单,但我找不到答案.如果之前已经回答过,我很抱歉.
我有一个DecimalField来自我的django应用程序中的模板视图.我只需要显示它的整数部分.
我怎样才能做到这一点?
=========================解决方案发现======================= =
对不起,如果我获得许可,我会回答,但只有8小时后我才能这样做.
谢谢你的答案.我找到了一个工作得很好的内置解决方案.它是一个内置的模板过滤器.文档如下.
https://docs.djangoproject.com/en/dev/ref/templates/builtins/?from=olddocs#floatformat
基本上,我的用途是这样的:
{{decimal_obj|floatformat:0}}
Run Code Online (Sandbox Code Playgroud)
一个更好的解决方案是stringformat过滤器:
https://docs.djangoproject.com/en/dev/ref/templates/builtins/?from=olddocs#stringformat
用法:
{{decimal_obj|stringformat:"d"}}
Run Code Online (Sandbox Code Playgroud)
谢谢您的帮助.伊格纳西奥是对的;)
如果这个问题已经得到解答,我很抱歉,但我无法在其他任何地方找到它.
在我的django项目中,我有一些外键字段,它们有可供选择的选项.foreignkey字段的django下拉默认小部件很难找到我想要的那个.
我已经越过了filter_horizontal管理选项,它为文本搜索字段和两个选择器的多个字段带来了很好的选择功能.
我想知道是否有django内置选项,或者你是否有人找到了一个解决方案,允许我"动态"搜索外键字段,如"filter_horizontal"中指定的多个字段一样
提前致谢.
场景:我的Django应用程序中有一个应用程序,我从未将其置于南方管理之下.很久以前我运行了一个syncdb,这个应用程序的模型从来没有改变过.在整个过程中,我显然已将数据添加到这些表中.
现在,我希望将此应用程序置于南方管理之下,但是一旦表格已经存在,我就可以创建迁移文件,但很自然地,我无法执行它们.我收到现有表的数据库错误:
django.db.utils.DatabaseError: (1050, "Table 'ooyala_ooyalaitem' already exists")
这对我来说非常明显.我想知道的是,是否有一种智能方法来运行migrate命令来使用当前表.我不想转储数据,手动删除表,运行迁移和重新填充内容,也不想为此创建数据迁移.
有什么想法吗?它甚至可能吗?
谢谢你的时间.