小编Lou*_*iro的帖子

Django将整数模型字段的范围设置为约束

我有一个django模型,

class MyModel(models.Model)
    qty = model.IntegerField()
Run Code Online (Sandbox Code Playgroud)

我想为qty这样的东西设置约束,> 0或<0,即qty可以是负数或正数但不能为0.

在Django有没有直接的方法呢?

python django django-models

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

找不到msguniq.确保安装了GNU gettext工具0.15或更新版本.(Django 1.8和OSX ElCapitan)

我正在尝试通过遵循精彩的Django文档来国际化Django应用程序.问题是当我尝试运行命令来创建语言文件时:

python manage.py makemessages -l fr
Run Code Online (Sandbox Code Playgroud)

它输出一个错误:

CommandError: Can't find msguniq. Make sure you have GNU gettext tools 0.15 or newer installed.
Run Code Online (Sandbox Code Playgroud)

我的配置:

  • 操作系统:OSX El Capitan v10.11.3
  • Python:v3.5
  • Django:v1.8

python django macos gettext osx-elcapitan

18
推荐指数
4
解决办法
9803
查看次数

如何使用Django-Rest-Framework序列化用户组

我正在尝试使用Django REST框架获得用户组,但只有我得到的是名为"groups"的空字段.

这是我的UserSerializer:

class UserSerializer(serializers.ModelSerializer):    
    class Meta:
        model = User
        fields = ('url', 'username', 'email', 'is_staff', 'groups')
Run Code Online (Sandbox Code Playgroud)

任何想法如何获得用户组数据?

提前致谢

python django rest django-rest-framework

11
推荐指数
2
解决办法
5806
查看次数

Web服务方法名称无效

当我尝试从javascript调用webmethod时,我收到以下错误"Web服务方法名称无效"

System.InvalidOperationException:SaveBOAT Web服务方法名称无效.在在System.Web.Services.Protocols.ServerProtocolFactory System.Web.Services.Protocols.HttpServerProtocol.Initialize()在System.Web.Services.Protocols.ServerProtocol.SetContext(类型类型,HttpContext的上下文中,请求的HttpRequest,HttpResponse对象响应). Create(Type type,HttpContext context,HttpRequest request,HttpResponse response,Boolean&abortProcessing)

HTML代码:

<asp:LinkButton runat="server" ID="lnkAddBoat" OnClientClick="javascript:AddMyBoat(); return false;"></asp:LinkButton>
Run Code Online (Sandbox Code Playgroud)

JS代码:

function AddMyBoat() {
            var b = document.getElementById('HdnControlId').value;

            jQuery.ajax({
                type: "GET",
                url: "/AllService.asmx/SaveBOAT",
                data: { Pid: b },
                contentType: "application/text",
                dataType: "text",
                success: function(dd) {
                    alert('Success' + dd);
                },
                error: function(dd) {
                    alert('There is error' + dd.responseText);
                }
            });
}
Run Code Online (Sandbox Code Playgroud)

C#代码(AllService.asmx文件中的Web方法)

[WebMethod]
public static string SaveBOAT(int Pid)
{
    // My Code is here
    //I can put anythng here
    SessionManager.MemberID = Pid;
    return "";
} …
Run Code Online (Sandbox Code Playgroud)

javascript asp.net jquery

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

ElementNotVisibleException:消息:元素当前不可见... selenium(python)

我正在使用python的selenium获取那些恼人的元素是不可见的异常,而元素是活动的,选择的和闪烁的.

问题是在页面上制作一个jfiddle,所以这里不是制作小提琴本身,而是在你的ipython终端登录并拥有一个webdriver(名为'driver')的切割和粘贴方式(输入用户名和密码)进入ipython,而不是页面):

https://gist.github.com/codyc4321/787dd6f62e71cc71ae83

现在有一个驱动程序,你登录jsfiddle,我在这里做的一切都失败了,除了第一次选择框(让我说我想把CSS放在CSS框中):

https://gist.github.com/codyc4321/f4c03c0606c2e3e4ff5b

粘贴activate_hidden_element并在第一个代码行中看到CSS面板亮起.出于某种原因,这个突出显示的面板"不可见",您无法粘贴和编码.该项目是

  <div class="window top" id="panel_css" data-panel_type="css">
    <textarea id="id_code_css" rows="10" cols="40" name="code_css"></textarea>
    <a href="#" class="windowLabel" data-panel="css">
      <span class="label">CSS</span><i class="bts bt-gear"></i>
    </a>
  </div>
Run Code Online (Sandbox Code Playgroud)

所有其他项目(HTML,JS)基本相同.为什么这个活动框不允许文本粘贴?谢谢

解:

我使这项服务工作的丑陋方式是手动伪造剪切和粘贴:

css_content = get_inline_content_and_remove_tags(webpage_content, 'style')

js_content = get_inline_content_and_remove_tags(webpage_content, 'script')

webpage_content = # ...clean cruft...

def copy_paste_to_hidden_element(content=None, html_id=None):
    pyperclip.copy(content)
    activate_hidden_element(html_id=html_id, driver=driver)
    call_sp('xdotool key from+ctrl+v')
    time.sleep(1)

copy_paste_to_hidden_element(content=webpage_content, html_id="panel_html")
copy_paste_to_hidden_element(content=js_content, html_id="panel_js")
copy_paste_to_hidden_element(content=css_content, html_id="panel_css")
Run Code Online (Sandbox Code Playgroud)

它确实有效,唯一的小问题是它无法在后台运行,我需要单独离开屏幕大约30秒

javascript python selenium selenium-webdriver

8
推荐指数
1
解决办法
1570
查看次数

如何使用Espresso Android点击选项菜单上的索引

我使用以下代码调用选项菜单:
openActionBarOverflowOrOptionsMenu(getInstrumentation().getTargetContext());

之后,菜单出现了.现在我按其文本点击菜单项,这很好.

我已经注意到的问题是主题,可以改变,假设用户是否为不同的客户端使用多种语言.所以在长时间的测试中它没用.

出于这个原因,我想用来Espresso点击index具体的测试用例.

设置菜单似乎没有ID.所以我不知道如何点击该菜单中的特定项目"索引",假设我想点击第四项.

你能帮我解决一下吗?

android automated-tests menu android-espresso

7
推荐指数
2
解决办法
3869
查看次数

在模板中使用特定的平面页面

我正在使用django flatpage,我想知道是否有一种在模板中加载一个特定平面的简洁方法.文档显示以下模式:

{% load flatpages %}

{% get_flatpages '/about/' as about_pages %}
{% get_flatpages about_prefix as about_pages %}
{% get_flatpages '/about/' for someuser as about_pages %}
Run Code Online (Sandbox Code Playgroud)

我只是想在模板中加载一个特定页面,基本上像使用include语句一样使用它(例如{% include 'homepage.html' %})

我使用的方法是这样的:

{% get_flatpages '/flat-homepage/' as flatpages %}
{{ flatpages.first.content|safe }}
Run Code Online (Sandbox Code Playgroud)

这样可以正常工作,但我认为这可能会有一种更简洁的方式.我正在标记内容,safe因为我想要应用html样式(再次,不确定是否有更好的方法来执行此操作)

python django django-templates django-1.7

7
推荐指数
1
解决办法
444
查看次数

iOS Test Flight应用程序安装失败

我已经向iTunes connect提交了一个iOS应用程序,它处于beta测试状态.我已经在帐户中添加了一个新的外部测试仪,新的测试人员从iTunes connect获得了通知.但是用户无法安装应用程序,收到如下错误消息,

The invitation is invalid.  Try again.  If the problem persists, 
Run Code Online (Sandbox Code Playgroud)

联系邀请人.

谁能帮帮我吗?

testing itunesconnect testflight

7
推荐指数
1
解决办法
89
查看次数

loopback关系数据库hasManyThrough数据透视表

我似乎陷入了经典的ORM问题,并且不知道如何处理它,所以在这一点上欢迎任何帮助.

有没有办法在hasManyThrough查询上获取数据透视表?更好的是,应用一些过滤器或排序.一个典型的例子

表产品

id,title
Run Code Online (Sandbox Code Playgroud)

表类别

id,title
Run Code Online (Sandbox Code Playgroud)

table products_categories

productsId, categoriesId, orderBy, main
Run Code Online (Sandbox Code Playgroud)

因此,在上面的场景中,假设您希望获得(main = true)的所有类别的产品X,或者您希望按类别对产品类别进行排序orderBy.

现在会发生什么是第一SELECT的产品,以获得产品数据,第二SELECT对products_categories获得categoriesId和最终SELECT的类别,以获得实际的类别.理想情况下,过滤器和排序应该适用于第二SELECT

SELECT `id`,`productsId`,`categoriesId`,`orderBy`,`main` FROM `products_categories` WHERE `productsId` IN (180) WHERE main = 1 ORDER BY `orderBy` DESC
Run Code Online (Sandbox Code Playgroud)

另一个典型的例子是希望根据用户想要的订单来订购产品图像

所以你会有一个products_images表

id,image,productsID,orderBy
Run Code Online (Sandbox Code Playgroud)

你会想要的

SELECT from products_images WHERE productsId In (180) ORDER BY orderBy ASC
Run Code Online (Sandbox Code Playgroud)

这甚至可能吗?

编辑:这是中间表根据我的架构获得我需要的内容所需的关系.

Products.hasMany(Images,
    {
        as: "Images",
        "foreignKey": "productsId",
        "through": ProductsImagesItems,
        scope: function (inst, filter) {
            return {active: 1};
        }
    });
Run Code Online (Sandbox Code Playgroud)

事情是范围功能让我访问最终结果而不是中间表.

node.js strongloop loopbackjs

6
推荐指数
1
解决办法
538
查看次数

如何在Django上由管理员和客户分隔用户(模型)

我想将我的Django应用程序的用户分为两类:
- Admin(使用Django admin的用户) - 继承自AbstractUser
- User(客户用户) - 继承自AbstractBaseUser

我想这两种用户分开,因为所有领域AbstractUser(is_staff,is_superuser,groups,permissions)是无用的,我的客户的用户和权限和组,我只是想实现不同的东西.那就是为什么,我想用AbstractBaseUser.

但是对于django管理员用户来说AbstractUser,这是完美的,尤其是权限功能.

class Admin(AbstractUser):
    pass

class Customer(AbstractBaseUser):
    pass
Run Code Online (Sandbox Code Playgroud)

但现在,有没有办法精确定义Admin用于django管理员的用户模型?并将该Customer模型用于我的其他应用程序.

我是否必须从头开始实施:

class MyUser(AbstractBaseUser):
    username = models.CharField(max_length=30, unique=True)
    first_name = models.CharField(max_length=30)
    last_name = models.CharField(max_length=30)
    email = models.EmailField()
    is_active = models.BooleanField(default=False)

class Admin(MyUser, PermissionsMixin):
    is_staff = models.BooleanField(default=True)


class Customer(MyUser):
    # specific fields
    pass
Run Code Online (Sandbox Code Playgroud)

有了这个实施,如果我设置AUTH_USER_MODELUser,权限将无法工作,因为User没有permissions …

python django django-models django-admin

6
推荐指数
1
解决办法
1854
查看次数