Python中文
首页
教程
问答
标签
搜索
登录
注册
为什么import语句要在要导入的类之外导入函数?
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我的理解是使用语法:</p> <pre><code>from foo import y </code></pre> <p>将从foo.py导入类y</p> <p>如果这是真的,为什么我要使用以下选项:</p> <p>型号.py</p> <pre><code>from django.db import models from .utils import codeGenerator, createShortcode class KirrUrlManager(models.Manager): def all(self, *args, **kwargs): qs_main = super(KirrUrlManager, self).all(*args, **kwargs) qs = qs_main.filter(active=True) return qs def refreshShortCodes(self): qs = KirrUrl.objects.filter(id__gte=1) #id_gte is primary key newCodes = 0 for q in qs: q.shortcode = createShortcode(q) q.save() newCodes +=1 return "new codes made: {i} ".format(i=newCodes) class KirrUrl(models.Model): url = models.CharField(max_length=220, unique=True) shortcode = models.CharField(max_length=50, unique=True, blank = True) timestamp = models.DateTimeField(auto_now=True,) timestamp = models.DateTimeField(auto_now_add=True,) active = models.BooleanField(default=True,) objects = KirrUrlManager() def save(self, *args, **kwargs): if self.shortcode is None or self.shortcode =="": self.shortcode = createShortcode(self) super(KirrUrl, self).save(*args, **kwargs) def __str__(self): return str(self.url) </code></pre> <p>foo.py公司</p> <pre><code>from django.core.management.base import BaseCommand, CommandError from shortener.models import KirrUrl class Command(BaseCommand): help = "refreshes all shortcodes" def handle(self, *args, **options): return KirrUrl.objects.refreshShortCodes() </code></pre> <p>我不确定为什么能够在foo.py中调用方法“refreshShortCodes()”。我只使用import语句“from shortener.models import KirrUrl”。这个import语句不应该只让我导入KirrUrl类吗?refreshShortCodes()不是KirrUrl类的一部分,但是它是要导入的models.py文件</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>你只需要导入类就可以访问它的属性;不能导入封装在类中的对象</p> <p>因此,在导入类<code>KirrUrl</code>之后,模型管理器<code>objects</code>可以通过类访问,而方法<code>refreshShortCodes</code>同样可以通过类<code>KirrUrl</code>中组成的模型管理器实例访问</p> <p>这是通过导入机制无法访问的对象的方式之一;点引用</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何添加虚拟方法
3 回答
如何添加表示整数的擦边字符串?
3 回答
如何添加要在Bokeh中使用的新font.ttf文件?
2 回答
如何添加要显示的矩阵XY轴编号和XY轴
9 回答
如何添加计数?
1 回答
如何添加计数器函数?
10 回答
如何添加计数器列来计算数据帧中另一列中的特定值?
8 回答
如何添加计数器来跟踪while循环中的月份和年份?
4 回答
如何添加计数并删除countplot的顶部和右侧脊椎?
1 回答
如何添加计时器wx.应用程序更新窗口对象的主循环?
7 回答
如何添加评论到帖子?PostDetailVew,Django 2.1.5
6 回答
如何添加评论拉梅尔亚姆
4 回答
如何添加诸如矩阵Python/Pandas之类的数据帧?
4 回答
如何添加谷歌地点自动完成到Flask?
3 回答
如何添加超时、python discord bot
3 回答
如何添加超过1dp的检查
1 回答
如何添加距离方法
8 回答
如何添加跟随游戏的敌人精灵
6 回答
如何添加路径以便python可以找到程序?
4 回答
如何添加身份验证/安全性以使用happybase访问HBase?
6 回答