Re: [mezzanine-users] After upgrade to to 4.0.1....

2016-08-10 Thread Eduardo Rivas
Clearing the cache once will make it work on all pages. If that doesn't
work, I would say is a static file issue, not a DB one.

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] When to use multiple projects, instances, sites?

2016-08-10 Thread Eduardo Rivas
No need to modify any Python files. The Sites framework is a standard 
Django feature and you only need to create new sites records in the 
admin. In the side menu go to Site > Sites and create as many records as 
you like. Don't forget to assign the correct domains for each. After 
that you'll be able to select the site you want to edit in a dropdown in 
the upper right corner of the admin.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] wrong base.html

2016-08-12 Thread Eduardo Rivas
Looks like you're mixing themes there. You shouldn't have folders from 
one theme inside another. I recommend you move A/templates/B to 
B/templates/B. You should only have:


A/templates/A

B/templates/B

C/templates/C

etc...

--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Mezzanine 4.2.0 released

2016-08-15 Thread Eduardo Rivas

Really excited about the new Content Typed abstraction! :)

I just want to point out that Filebrowser now uses an HTML5 uploader, so 
Mezzanine is completely Flash-free.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Blog "Sorry an error occured" nothing in log DEBUG=True

2016-08-18 Thread Eduardo Rivas
Have you configured email reporting for your site? That should get you a 
full traceback delivered to your email, which you can then post here. 
This thread describes how to configure it: 
https://groups.google.com/forum/#!searchin/mezzanine-users/500/mezzanine-users/f5xWowOEL7M/4thS5GqwKiYJ


Also, you should check the server logs for errors. The default 
deployment mechanism (fabric) puts error logs in 
/home//logs/_error.log (where  and 
 depend on your particular installation).


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Re: What does "NOTE: Don't forget to import the view function too!" mean?

2016-08-23 Thread Eduardo Rivas

Thanks for sharing the answer, I'm sure it will be useful to others.

--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Re: mezzanine refrence

2016-09-05 Thread Eduardo Rivas
I would like to add that one of the most important aspects of Mezzanine is
that it's just Django. Having a solid Django foundation will go a long way.
Look for the official Django tutorial and the Django Girls tutorial to get
started. Also, consult the Django docs as you work with Mezzanine.

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Hide website field in comments form

2016-09-05 Thread Eduardo Rivas

I would just hide it with CSS since it's an optional field:

form#comment .input_id_url {
display: none;
}

--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Where exactly does defaults.py go?

2016-09-06 Thread Eduardo Rivas
You need to create a Django app to put your defaults.py, your templates,
and static files. I usually just name the app "theme" and add it before
mezzanine.boot in INSTALLED_APPS.

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] collectstatic ignores App's static

2016-09-06 Thread Eduardo Rivas
Responding here too for future reference:

You need to create a Django app to put your templates and static files. I
usually just name the app "theme" and add it before mezzanine.boot in
INSTALLED_APPS. Inside this new app you can create a static/ folder to
store your custom static files or override any of Mezzanine's.

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Deploy multitennancy sites on same machine

2016-09-06 Thread Eduardo Rivas
You can have as many different Mezzanine installations as you want. 
Usually each installation is made up by:


- One virtualenv with Mezzanine and all its dependencies
- One database for the site
- Your specific projects files (settings, urls, custom apps; generated 
via mezzanine-project)


Please note that this implies completely separate sites (database, 
uploaded files, and code are not shared).


On the other hand, when the docs speak about multi tenancy they are 
referring to using a single installation to serve multiple sites 
(domains or subdomains). This means that with one virtualenv, one 
database, and one settings file you want to serve multiple sites, 
leveraging Django's Site Framework.


Here are some examples of when to use each approach:

- Separate Mezzanine projects: Use this if the sites you want to create 
are completely unrelated. For example, if you want to host sites for 
several clients in a single server, each client project should have its 
own separate Mezzanine installation.


- Multi tenancy: Use this if a single project must be available through 
different domains / subdomains. All sites will have the same set of 
available apps and media files, but they can have a different appearance 
and database records. For example, a school district may want to have 
different sites for all their schools. They all share the same codebase, 
but have a slightly different appearance and their own DB records (blog 
posts, pages, etc).


Further reading:
- Django's site framework: 
https://docs.djangoproject.com/en/1.10/ref/contrib/sites/
- Mezzanine's multi tenancy: 
http://mezzanine.jupo.org/docs/multi-tenancy.html
- Deployment tutorial which mentions multiple projects in a single 
server (note that this assumes Mezzanine is being deployed to a VPS) 
http://mezzanine.jupo.org/docs/deployment.html#tutorial


Hope that clears things up a little bit :)

--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Re: Deploy multitennancy sites on same machine

2016-09-06 Thread Eduardo Rivas
Hmm, I'm not sure if you can get away with using different URLs after 
the domain. What I would do in your case is use subdomains for each 
site: a.example.com, b.example.com, etc. If you go that way, you'll only 
need to create the site records in the admin and everything should be 
working as per the docs.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Problem deploying Mezzanine on DigitalOcean

2016-09-07 Thread Eduardo Rivas
It looks like your theme application is lacking migrations. You'll need to 
create those if you want to use Mezzanine's models as dependencies of your 
app.

python manage.py makemigrations theme
python manage.py migrate theme

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Conflicting template tags with AngularJS

2016-09-08 Thread Eduardo Rivas

Hey there!

Looks like a general Django + Angular problem. I would turn to Google 
for that and also ask in the Django mailing list to get more exposure 
(or maybe the answer awaits you over there already!).


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Re: Blogposts visible on site but not in admin panel.

2016-09-15 Thread Eduardo Rivas

Hi Michael.

You're passing a variable called blog.blogpost to Mezzanine, which 
doesn't exist in the Python scope.


1. You have to add quotes around the model name to treat it as a string, 
not a variable: "blog.blogpost"
2. You need to add a comma after the name so the parentheses is treated 
as a list: ("blog.blogpost",)

3. Model names are CamelCased: ("blog.BlogPost",)

The setting should look like:

OWNABLE_MODELS_ALL_EDITABLE = ("blog.BlogPost",)

--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] More customized publishing workflow (Draft, Published...)

2016-09-20 Thread Eduardo Rivas
There's another person working on something like this here: 
https://github.com/stephenmcd/mezzanine/issues/411#issuecomment-235018090. 
You may want to check on that and unify efforts.


One issue with your approach is that it will require a migration when a 
user adds a new choice. This will affect all models that subclass 
Displayable (pretty much everything). The developer will have to 
maintain the whole migration history separately or use one of the hacks 
for field injection. Not desirable IMO.


Maybe we can define the choices in the form level instead of the model? 
That way the model field can be a non-choiced field while the 
dynamically generated choices are used in the form. That will still 
require a single migration but it can live in Mezzanine and be 
completely backwards compatible.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Mezzanine 4.2.2 released

2016-09-25 Thread Eduardo Rivas
Nice! Good to see these quick bug fix releases.

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Re: Internal Server Error

2016-09-26 Thread Eduardo Rivas
Please don't double post. Some people are subscribed to this list and will
get every email.

Have you configured email reporting for your site? That should get you a
full traceback delivered to your email, which you can then post here. This
thread describes how to configure it:
https://groups.google.com/forum/#!searchin/mezzanine-
users/500/mezzanine-users/f5xWowOEL7M/4thS5GqwKiYJ

Also, you should check the server logs for errors. The default deployment
mechanism (fabric) puts error logs in
/home//logs/_error.log
(where  and  depend on your particular
installation).

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] How to deploy using Fabric to RHEL server?

2016-09-30 Thread Eduardo Rivas
I recommend you create the RHEL-compatible fabfile as a separate project 
and add it to Mezzanine's list of third party packages. The existing 
fabfile is quite big already and this looks like it would add quite a 
bit of complexity.


I did something similar for a fabfile that works with Webfaction (a 
hosting provider that uses Cent OS servers, disallows sudo, and a few 
other differences when compared to an Ubuntu VPS). It's just a matter of 
providing your own fabfile, modifying the files inside deploy/, and 
writing some instructions to integrate with Mezzanine. 
https://github.com/jerivas/mezzanine-webf


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Re: Internal Server Error

2016-10-02 Thread Eduardo Rivas
We're going to need to see the full traceback again to help you out. 
However, a 502 sounds like an error happening before the request reaches 
Django. Can you check the nginx logs? They should be in 
/home/%(user)s/logs/%(proj_name)s_error_nginx.log (taken from the fabfile).


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Live Demo Code

2016-10-07 Thread Eduardo Rivas
I think it's just a Mezzanine + Cartridge project with the demo content 
installed. You can get the same with:


pip install mezzanine cartridge
mezzanine-project -a cartridge project_name
cd project_name
python manage.py createdb --noinput
python manage.py runserver

--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Overriding status in class Displayable.

2016-10-13 Thread Eduardo Rivas
Thinking out loud, but maybe you can override the admin form for PageAdmin
to set the default there instead of at the model level.

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Fabric deployment with ALLOWED_HOSTS wildcard issue

2016-10-31 Thread Eduardo Rivas

Hi Geoffrey.

I think your diagnoses is correct: Django supports the wildcard domain 
syntax, but nginx doesn't. My recommendation would be to be explicit in 
your ALLOWED_HOSTS (specifying a fully qualified domain name on each 
entry). It my be worth adding a note stating that in the Deployment 
section of the docs.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Fabric deployment with ALLOWED_HOSTS wildcard issue

2016-10-31 Thread Eduardo Rivas
Yeah, the server name is working, the problem is that nginx is returning 
a 444 (a proprietary error code that means "drop this request 
altogether" https://httpstatuses.com/444). Whether or not a 444 is 
returned depends on a simple match against an ALLOWED_HOSTS regex, and 
that will not work with the dot notation 
https://github.com/stephenmcd/mezzanine/blob/master/mezzanine/project_template/deploy/nginx.conf.template#L23-L26


Maybe just comment-out that block and see how it goes? That should 
disable the checks for illegal hosts on nginx and let everything reach 
Django.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Fabric deployment with ALLOWED_HOSTS wildcard issue

2016-10-31 Thread Eduardo Rivas

You're welcome :)

--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] How to deploy using Fabric to RHEL server?

2016-10-31 Thread Eduardo Rivas
Hi CJ. I think you're on the right track with your modified fabfile and 
supporting blog post. I'm still of the idea that something like this 
should exist as a third-party package, and not as part of Mezzanine 
itself. My understanding is that we're trying to provide an easy-to-use 
starting point for a common setup (cheap, popular, Debian based VPS), 
not an alternative for all server environments.


Furthermore, bringing this into Mezzanine means that we have to keep it 
compatible with new releases, and people deploying to RHEL (or using the 
distro-detection mechanism) will file bugs against Mezzanine when 
something breaks on that front.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Override behaviour of "image upload" in media library

2016-11-04 Thread Eduardo Rivas
Looks like Filebrowser Safe sends a post-upload signal. You should be 
able to do your processing from there.


https://github.com/stephenmcd/filebrowser-safe/blob/761421ff719b7b673d008dd4b65ba4ac242ecd7a/filebrowser_safe/views.py#L352

--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Mezzanine development using Bash on Ubuntu on Windows 10

2016-11-08 Thread Eduardo Rivas
I played around with it a little, and was able to successfully get a 
project running with virtualenv, git, Django, and Mezzanine (as I 
regularly do in Ubuntu). I just installed Postgres as a Windows 
application (downloading the installer from their site, not using apt in 
the bash shell). After that you can connect to the Postgres server with 
Django as usual.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Re: Extra model fields at Mezzanine's derived package ?

2016-11-11 Thread Eduardo Rivas
Without knowing exactly which models you're modifying, I would recommend 
to avoid field injection in reusable apps. If you're injecting stuff on 
Page, it might be better to create a custom Page type and distribute 
that with your package. See: 
http://mezzanine.jupo.org/docs/content-architecture.html#creating-custom-content-types


If you still want to go with the field injection route, there are a few 
approaches that I know of:


- Maintain your own migration history for modified models using Django's 
MIGRATION_MODULES 
http://mezzanine.readthedocs.io/en/latest/model-customization.html#field-injection-caveats


- Add support for "out of app" migrations to Django 
http://bitofpixels.com/blog/upgrading-to-mezzanine-4/ (see the 
EXTRA_MODEL_FIELDS section)


- Create a model with your extra fields and couple it with a OneToOne field.

--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Rss and tags issues.

2016-12-02 Thread Eduardo Rivas

Hi Iliana.

For the link issue, make sure you've updated the Site record in the 
admin. It's under Site > Sites in the admin sidebar. By default it's set 
to the local URL, but you should change it to your production domain.


Regarding the tags in blog posts, Mezzanine ships with linked tags in 
the default blog post template (blog/blog_post_list.html). If you've 
created your own templates, you'll need to replicate that to generate 
the tag links:


{% keywords_for blog_post as tags %}

{% for tag in tags %}
{{ tag 
}}

{% endfor %}


See 
https://github.com/stephenmcd/mezzanine/blob/master/mezzanine/blog/templates/blog/blog_post_detail.html#L69-L81


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Re: Multiple Blogs

2017-01-04 Thread Eduardo Rivas
It looks like Mezzanine will derive a template name from the category slug, 
allowing you to create one template per category. Just an alternative to 
the in-template conditional.

https://github.com/stephenmcd/mezzanine/blob/master/mezzanine/blog/views.py#L46-L47

On Wednesday, January 4, 2017 at 3:11:59 PM UTC-6, Kenneth Bolton wrote:
>
> category.slug might be better for you!
>
> On Wed, Jan 4, 2017 at 4:00 PM, userblaz > 
> wrote:
>
>> thanks I managed with {% if category.title == 'blog' %}..
>>
>> On Tuesday, January 3, 2017 at 9:47:41 PM UTC+1, Kenneth Bolton wrote:
>>>
>>>
>>> On Tue, Jan 3, 2017 at 2:30 PM, userblaz  wrote:
>>> >
>>> > I went through Josh's blog and it was very helpful with the restyle of 
>>> my site but i didn't see
>>> > any section explaining how to have different stylings for 2 or more 
>>> different blogs. the base 
>>> > template is the same, I want to have a different base.html template on
>>> > http://example.com/posts/category/blog/ than 
>>> http://example.com/posts/category/news/...
>>>
>>> The crux of one solution is to add something appropriate to your 
>>> blog_post_list.html and blog_post_detail.html, perhaps in `extra_head` 
>>> block, that has your custom CSS in it with template `if` blocks to check 
>>> the category.
>>>
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "Mezzanine Users" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to mezzanine-use...@googlegroups.com .
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Re: Can't get gallery to work with existing django project

2017-02-14 Thread Eduardo Rivas
Galleries don't live under a single URL like the blog. They are a page type
that can have any URL.

To create a gallery, go the Pages section of the admin and select "Gallery"
 from the drop down at the top of the page tree.

On Feb 14, 2017 7:09 AM, "Bernardo Tavares"  wrote:

> Sorry, I get a page 404 error when importing all urls from mezzanine. "
> http://127.0.0.1:8000/blog/"; works fine.
>
> Page not found (404)
> Request Method: GET
> Request URL: http://127.0.0.1:8000/gallery/
> Raised by: mezzanine.pages.views.page
>
>
>
> Em segunda-feira, 13 de fevereiro de 2017 21:15:50 UTC-2, Stephen McDonald
> escreveu:
>>
>> You didn't post the error.
>>
>> On Tue, Feb 14, 2017 at 4:35 AM, Bernardo Tavares 
>> wrote:
>>
>>>
>>>
>>> Em segunda-feira, 13 de fevereiro de 2017 15:32:46 UTC-2, Bernardo
>>> Tavares escreveu:

 Hi,

 I'm trying to plug in mezzanine's blog and gallery system into and
 existing website. After pluging in 'mezzanine.urls', the blog worked like a
 charm, but i can't get the gallery to work. I can't seem to find the
 configuration for the '/gallery/' url either.

>>>
>>>
>>> I'm getting the following error when trying to access the url:
>>>
>>> Request Method: GET
>>> Request URL: http://127.0.0.1:8000/gallery/
>>> Raised by: mezzanine.pages.views.page
>>>
>>>
>>>
>>>
 Here is my main 'urls.py' file:

 from django.conf.urls import include, url
 from django.contrib import admin
 from main import urls as mainUrls
 import mezzanine.urls as mezzanineUrls

 urlpatterns = (
 url(r'^', include(mainUrls)),
 url(r'^', include(mezzanineUrls)),
 url(r'^admin/', include(admin.site.urls)),
 )


 Here is my installed apps:

 INSTALLED_APPS = (
 "django.contrib.admin",
 "django.contrib.auth",
 "django.contrib.contenttypes",
 "django.contrib.redirects",
 "django.contrib.sessions",
 "django.contrib.sites",
 "django.contrib.sitemaps",
 "django.contrib.staticfiles",
 "django.contrib.messages",
 'main',
 'custom_mezzanine',
 "mezzanine.boot",
 "mezzanine.conf",
 "mezzanine.core",
 "mezzanine.generic",
 "mezzanine.pages",
 "mezzanine.blog",
 "mezzanine.forms",
 "mezzanine.galleries",
 #"mezzanine.twitter",
 # "mezzanine.accounts",
 # "mezzanine.mobile",
 'parsley',
 'django_comments',
 )

 And i added some settings from mezzanine's start-project:

 #Weird-mezzanine-conf
 # Store these package names here as they may change in the future since
 # at the moment we are using custom forks of them.
 PACKAGE_NAME_FILEBROWSER = "filebrowser_safe"
 PACKAGE_NAME_GRAPPELLI = "grappelli_safe"
 OPTIONAL_APPS = (
 "debug_toolbar",
 "django_extensions",
 "compressor",
 PACKAGE_NAME_FILEBROWSER,
 PACKAGE_NAME_GRAPPELLI,
 )
 SITE_ID = 1
 COMMENTS_DISQUS_API_SECRET_KEY = 'xxx'
 COMMENTS_DISQUS_SHORTNAME = 'xxx'


 try:
 from mezzanine.utils.conf import set_dynamic_settings
 except ImportError:
 pass
 else:
 set_dynamic_settings(globals())

 I'm several hours stuck with this problem and would be glad if someone
 could help me. Thanks

>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups "Mezzanine Users" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to mezzanine-use...@googlegroups.com.
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>>
>>
>> --
>> Stephen McDonald
>> http://jupo.org
>>
> --
> You received this message because you are subscribed to the Google Groups
> "Mezzanine Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to mezzanine-users+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Cannot Install using createdb

2017-03-10 Thread Eduardo Rivas
Hi Charles.

This is due to the recent release of Bleach 2 (one of Mezzanine's
dependencies). Another thread was started recently regarding that and it
has the solution too
https://groups.google.com/forum/m/#!topic/mezzanine-users/59KM9IIe9eQ

On Mar 10, 2017 10:38 AM, "Charles Roberts" <587ro...@gmail.com> wrote:

> Hi,
>
> I have been looking at the same problem for several days now, so it is
> time to seek 'newbie' help.  I am following instructions at:
> http://mezzanine.jupo.org/docs/overview.html#installation
>
> I am trying to install a default Mezzanine build using the sqlite db.  I
> am using python 2.7.10 because the target system will run on AWS Lambda
> using Zapper, which only supports Python 2.7.  Production DB will be an RDS
> db running SQL. At the moment I just want to get a local mezzanine env set
> up to play with.
>
>  I am using:
>
>
>- Mac OSX
>- Python 2.7.10
>- virtualenv
>
> Commands:
>
> inside virtual env running python 2.7.10
>
>
>- pip install mezzanine
>- pip install yolk
>- yolk -l (to list installed packages)
>-
>
>   Django 1.10.6 has no metadata
>
>   Mezzanine 4.2.2 has no metadata
>
>   Pillow 4.0.0 has no metadata
>
>   Python  - 2.7.10   - active development
>   (/System/Library/Frameworks/Python.framework/Versions/2.7/
>   lib/python2.7/lib-dynload)
>
>   appdirs 1.4.3 has no metadata
>
>   beautifulsoup4 4.5.3 has no metadata
>
>   bleach 2.0.0 has no metadata
>
>   chardet 2.3.0 has no metadata
>
>   django-contrib-comments 1.8.0 has no metadata
>
>   filebrowser-safe 0.4.6 has no metadata
>
>   future 0.16.0 has no metadata
>
>   grappelli-safe 0.4.5 has no metadata
>
>   html5lib 0.9 has no metadata
>
>   oauthlib 2.0.1 has no metadata
>
>   olefile 0.44 has no metadata
>
>   packaging 16.8 has no metadata
>
>   pip 9.0.1 has no metadata
>
>   pyparsing 2.2.0 has no metadata
>
>   pytz 2016.10 has no metadata
>
>   requests-oauthlib 0.8.0 has no metadata
>
>   requests 2.13.0 has no metadata
>
>   setuptools 34.3.1 has no metadata
>
>   six 1.10.0 has no metadata
>
>   tzlocal 1.3 has no metadata
>
>   webencodings 0.5 has no metadata
>
>   wheel 0.29.0 has no metadata
>
>   wsgiref - 0.1.2- active development
>   (/System/Library/Frameworks/Python.framework/Versions/2.7/
>   lib/python2.7)
>
>   yolk 0.4.3 has no metadata
>
>
>- mezzanine-project mysecondsite
>- cd mysecondsite
>- python manage.py createdb
>
> I then get the following:
>
> (mezzanine) Charless-MBP-3:mysecondsite charlesroberts$ python manage.py
> createdb
>
> Traceback (most recent call last):
>
>   File "manage.py", line 14, in 
>
> execute_from_command_line(sys.argv)
>
>   File "/Users/charlesroberts/mezzanine/lib/python2.7/site-
> packages/django/core/management/__init__.py", line 367, in
> execute_from_command_line
>
> utility.execute()
>
>   File "/Users/charlesroberts/mezzanine/lib/python2.7/site-
> packages/django/core/management/__init__.py", line 341, in execute
>
> django.setup()
>
>   File 
> "/Users/charlesroberts/mezzanine/lib/python2.7/site-packages/django/__init__.py",
> line 27, in setup
>
> apps.populate(settings.INSTALLED_APPS)
>
>   File "/Users/charlesroberts/mezzanine/lib/python2.7/site-
> packages/django/apps/registry.py", line 108, in populate
>
> app_config.import_models(all_models)
>
>   File "/Users/charlesroberts/mezzanine/lib/python2.7/site-
> packages/django/apps/config.py", line 199, in import_models
>
> self.models_module = import_module(models_module_name)
>
>   File "/System/Library/Frameworks/Python.framework/Versions/2.7/
> lib/python2.7/importlib/__init__.py", line 37, in import_module
>
> __import__(name)
>
>   File "/Users/charlesroberts/mezzanine/lib/python2.7/site-
> packages/mezzanine/conf/models.py", line 7, in 
>
> from mezzanine.core.models import SiteRelated
>
>   File "/Users/charlesroberts/mezzanine/lib/python2.7/site-
> packages/mezzanine/core/models.py", line 24, in 
>
> from mezzanine.core.fields import RichTextField, OrderField
>
>   File "/Users/charlesroberts/mezzanine/lib/python2.7/site-
> packages/mezzanine/core/fields.py", line 14, in 
>
> from mezzanine.utils.html import escape
>
>   File "/Users/charlesroberts/mezzanine/lib/python2.7/site-
> packages/mezzanine/utils/html.py", line 36, in 
>
> if "tel" not in sanitizer.BleachSanitizer.allowed_protocols:
>
> AttributeError: 'module' object has no attribute 'BleachSanitizer'
>
>
> I have previously successfully used the djangogirls tutorial and the
> Django Tutorial using:
>
>
>- python manage.py migrate
>
> with no issues.
>
>
> I am at the point of going with a 5 min Wordpress install,  someone bring
> me back from the edge, because I am fed up of googling in desperation!!
>
>
> many thanks
>
>
>
>
> --
> You received this message because you 

[mezzanine-users] Re: Mezzanine 4.2.3 released

2017-03-10 Thread Eduardo Rivas
Hey Steve, thanks for the release! Are you also going to release Grappelli 
and Filebrowser? They contain fixes for the inline issues described in 
https://github.com/stephenmcd/grappelli-safe/pull/79#issuecomment-263872748

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Re: Mezzanine 4.2.3 released

2017-03-10 Thread Eduardo Rivas

Excellent! Thanks.

--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[mezzanine-users] Re: creating a page with a custom, or multiple, rich text fields

2017-03-13 Thread Eduardo Rivas
Hi Mike.

You are importing RichText, which is an abstract model, not a field. The 
actual field is located at mezzanine.core.fields.RichTextField. You can 
import it and add as many instances as you want to your model.

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Local .css file not updating, working fine when deployed

2017-03-17 Thread Eduardo Rivas
My guess is you might have run collecstatic locally, and Mezzanine is 
now using the project-wide static/ folder instead of the per-app static/ 
folder (where changes are usually made).


What are the contents of your top-level static/ folder? It should only 
contain a media/ folder in development.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] HOMEPAGE AS AN EDITABLE PAGE IN THE PAGE TREE

2017-03-21 Thread Eduardo Rivas

Hi Daniel.

The frontend editing tool just exposes whatever you see in the admin. So 
if it's possible in the frontend, it has to be possible in the admin.


You should register your own custom HomePage model with as many 
RichTextFields as you like. You can then create an instance with "/" as 
the slug and any content you want. If you set up the template to use 
inline editing, you should also be able to edit it from the frontend.


Here's a full example: 
http://bitofpixels.com/blog/mezzatheming-part-2-the-homepage/ (the whole 
series is worth reading, but it might be a bit outdated since it was 
made for Mezzanine 3).


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] hiding the "Rich text page" as creatable page type

2017-03-30 Thread Eduardo Rivas
Hi Pima.

There's a setting just for that
http://mezzanine.jupo.org/docs/configuration.html#admin-removal

On Mar 30, 2017 12:51 PM,  wrote:

> Hi,
>
> I'm trying to hide the "Rich text page" page type in the admin/pages/page
> view - normally this would be finding the admin.py and commenting off the
> `register` call for it, but since this file is somewhere under mezzanine's
> source control, deep editing an admin.py inside an app is probably a bad
> plan.
>
> Is there a way to tell Mezzanine that I want to keep the model around, so
> I can extend it in my own models, but not show the base "Rich text page" as
> creatable thing in the Mezzanine admin?
>
> - Pomax
>
> --
> You received this message because you are subscribed to the Google Groups
> "Mezzanine Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to mezzanine-users+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] hiding the "Rich text page" as creatable page type

2017-03-30 Thread Eduardo Rivas
Sorry, auto correct messed up your name!

On Mar 30, 2017 1:18 PM, "Eduardo Rivas"  wrote:

> Hi Pima.
>
> There's a setting just for that http://mezzanine.jupo.
> org/docs/configuration.html#admin-removal
>
> On Mar 30, 2017 12:51 PM,  wrote:
>
>> Hi,
>>
>> I'm trying to hide the "Rich text page" page type in the admin/pages/page
>> view - normally this would be finding the admin.py and commenting off the
>> `register` call for it, but since this file is somewhere under mezzanine's
>> source control, deep editing an admin.py inside an app is probably a bad
>> plan.
>>
>> Is there a way to tell Mezzanine that I want to keep the model around, so
>> I can extend it in my own models, but not show the base "Rich text page" as
>> creatable thing in the Mezzanine admin?
>>
>> - Pomax
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "Mezzanine Users" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to mezzanine-users+unsubscr...@googlegroups.com.
>> For more options, visit https://groups.google.com/d/optout.
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Fetch As Google - Redirect

2017-04-30 Thread Eduardo Rivas
Your site is actually served on the www subdomain, and the top level 
domain is configured to redirect to that. This way of setting up sites 
is down to personal preference, but it's a perfectly valid 
configuration. Google understands it and will set the www subdomain as 
the "canonical" URL.


The redirect itself is done by the server, before the request reaches 
Mezzanine.



On 2017-04-30 2:58 PM, Richard Jackson wrote:



Hi everyone,

Has anyone had any issues with Google Search Console crawling a 
Mezzanine site? I used 'Fetch as Google' and the crawl was redirected, 
giving the below message:




Any thoughts very much appreciated!

Rich

--
You received this message because you are subscribed to the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to mezzanine-users+unsubscr...@googlegroups.com 
.

For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] error "context must be a dict rather than Context"

2017-05-04 Thread Eduardo Rivas
This is because Mezzanine is not compatible with Django 1.11. I 
recommend you downgrade to 1.10 for now.


There's an open pull request that implements Django 1.11 support, in 
case you want to try it out: 
https://github.com/stephenmcd/mezzanine/issues/1749


On 2017-05-04 1:59 PM, marco coso wrote:



Hello

i successfully installed mezzanine on my pc, but when i tried to setup 
it on a server, i got this error:



Error during template rendering

"In template 
|/var/www/envlibri/lib/python2.7/site-packages/mezzanine/core/templates/base.html|, 
error at line *66*



  context must be a dict rather than Context

"

the line is this:

{% block navbar_search_form %}{% search_form "all" %}{% endblock %}


i check and i have exactly the same line in my pc, where mezzanine run 
without problem.


This error is not present in the log, not in that of apache, neither 
in the custom log of mezzanine.


Any help?

p.s.

Django Version: 1.11

, python 2.7.9
--
You received this message because you are subscribed to the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to mezzanine-users+unsubscr...@googlegroups.com 
.

For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Channels?

2017-05-19 Thread Eduardo Rivas
I don't think there's anything specific about Mezzanine and Channels. If 
you have a Django app that works, all you'd need to do is install it as 
usual in a Mezzanine project (add to INSTALLED_APPS, configure urls, 
etc). Same thing with the server, if you have a stack that works with 
Django, it should work with Mezzanine.



On 2017-05-19 12:58 PM, Richard Prosser wrote:
I would like to add Channels 
 to Mezzanine, so as to 
provide a custom chat facility for one of my projects. I have tried to 
do this and add special pages via Django CMS but I have found that to 
be quite awkward.


Does Mezzanine make such additions any easier? My impression is 'yes' 
because we can use our own models etc. but I would welcome some 
informed opinion on the matter. One concern may be that a simple HTTP 
server will not suffice, as there will need to be a handler for each 
channel.


I may be willing to make a GitHub repo. for this, at least in a basic 
sense. My own chat code will be private however.


I am an experienced Python developer and I have explored Django in 
some depth recently but I am new to Mezzanine.



Thanks ...

Richard

--
You received this message because you are subscribed to the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to mezzanine-users+unsubscr...@googlegroups.com 
.

For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Re: Mezzanine + ReCaptcha

2017-05-24 Thread Eduardo Rivas
My guess is you could check the field ID when looping in the email 
template. Somewhere around here: 
https://github.com/stephenmcd/mezzanine/blob/master/mezzanine/forms/templates/email/form_response.html#L6-L11


You'll also need to edit the plain text version.


On 2017-05-24 2:23 PM, Dominique wrote:
When using the FORMS_EXTRA_FIELDS technique, what is the recommended 
approach for keeping the captcha field/value from showing up in the 
form response emails?





On Friday, January 15, 2016 at 8:55:38 AM UTC-5, Alexandre wrote:

You have to add a ReCaptchaField to your page form.




El divendres, 15 gener de 2016 13:57:06 UTC+1, Alexander Tyapkov
va escriure:

Thanks! I will try this approach later, but for me registering
with EXTRA_FORM_FIELDS also didn't help. Probably your
solution will help.

2016-01-15 10:44 GMT+01:00 Alexandre Busquets Triola
:

Well, it's easy, with django-recaptcha.

pip install django-recaptcha

and then in settings.py set

INSTALLED_APPS = (
...
"captcha",
...
)

FORMS_EXTRA_FIELDS = (
(100, "captcha.fields.ReCaptchaField", "ReCaptcha"),
)

RECAPTCHA_PUBLIC_KEY = ...
RECAPTCHA_PRIVATE_KEY = ...


Fins ara,
Alexandre


El dijous, 14 gener de 2016 19:26:19 UTC+1, Alexander
Tyapkov va escriure:

Yes, I have done it but not is the way I have
expected. I didn't manage to register ReCaptcha field
inside of Mezzanine.
Instead, I have created my own form in which I have
included recaptcha field and afterwards used
page_processors for every page where I needed recaptcha

Hope, this will help!

Best regards,
Alexander

2016-01-14 15:53 GMT+01:00 Alexandre Busquets Triola
:

Hi Alexander,

I also need use recaptcha with mezzanine. Have you
do it?



El diumenge, 20 desembre de 2015 19:54:30 UTC+1,
Alexander Tyapkov va escriure:

I have updated Mezzanine to 4.0.1 and found
out that the code which registers additional
field for forms is not working anymore.
I also want to move to reCaptcha. For that I
have downloaded django-recaptcha and have
following code:

from captcha import fields as captcha_fields

GREATEST_ID = max(c[0] for c in
mezzanine_fields.NAMES)
ID = GREATEST_ID + 1
NAME = 'CAPTCHA'
setattr(mezzanine_fields, NAME, ID)
mezzanine_fields.NAMES =
list(mezzanine_fields.NAMES)
mezzanine_fields.NAMES.append((ID, _('Captcha')))

mezzanine_fields.NAMES =
tuple(mezzanine_fields.NAMES)
mezzanine_fields.CLASSES[ID] =
captcha_fields.ReCaptchaField

The problem is that registered field doesnt
appear in admin. Can anybody suggest something?

P.S. Also I have found that it is possible to
user FORM_EXTRA_FIELDS in settings but no good
example is provided. Can that help? Can
anybody post an example of usage?

-- 
You received this message because you are

subscribed to a topic in the Google Groups
"Mezzanine Users" group.
To unsubscribe from this topic, visit

https://groups.google.com/d/topic/mezzanine-users/C9lyFkhV9wU/unsubscribe

.
To unsubscribe from this group and all its topics,
send an email to mezzanine-use...@googlegroups.com.
For more options, visit
https://groups.google.com/d/optout
.


-- 
You received this message because you are subscribed to a

topic in the Google Groups "Mezzanine Users" group.
To unsubscribe from this topic, visit

https://groups.google.com/d/topic/mezzanine-users/C9lyFkhV9wU/unsubscribe

.
To unsubscribe from this group and all its topics,

Re: [mezzanine-users] Enable RichTextField().formfield() for registered users

2017-06-04 Thread Eduardo Rivas
Have you included  {{ form.media }} in the template where you render the
form? That should bring in the CSS and JS required to render the TinyMCE
widget.

On Jun 4, 2017 2:30 PM, "Diego Castro"  wrote:


Hello, I have created a form that is added to a page using decorators in a
page processor. This is the form:

class ExperimentForm(forms.Form):
   nombre = forms.CharField()
   texto = RichTextField().formfield()



The problem I have is to display "RichTextField().formfield()" to
registered users who are not superusers. I do not know what to do to
achieve it.

In advance I appreciate the help

-- 
You received this message because you are subscribed to the Google Groups
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Enable RichTextField().formfield() for registered users

2017-06-04 Thread Eduardo Rivas
Hmm, I would assume that the media library is not going to work for non
admin users. You'll have to implement file uploads yourself. I would start
by checking how Mezzanine handles file uploads in TinyMCE and emulating
that without the admin checks.

But first make sure you want non admin users uploading files to your
server. I would recommend implementing a regular file field in the form and
using the rich text editor for text only.

On Jun 4, 2017 3:12 PM, "Diego Castro"  wrote:

>  Thank you for your answer Eduardo. No, I had not included {{form.media}}.
> Now the richtextfield is displayed correctly, thank you very much. But
> there is a problem, if I want to load an image the following error appears
>
> Page not found (404)
> Request Method: GET
> Request URL: http://127.0.0.1:8000/fisica/undefined/?pop=5&type=image
> Raised by: mezzanine.pages.views.page
>
> I am putting in the template the following:
>
> 
>  {% csrf_token %}
>  {{ form.media }}
>  {{ form.as_p }}
>  Crear
> 
>
> I am doing something wrong?
>
> --
> You received this message because you are subscribed to the Google Groups
> "Mezzanine Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to mezzanine-users+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Enable RichTextField().formfield() for registered users

2017-06-05 Thread Eduardo Rivas
I think it's possible, but you won't be able to use much of Mezzanine's 
built-in capabilities, or at least you'll have to modify them quite a 
bit. I'm not very familiar with the media library code to be honest, so 
I encourage you to dive in an assess the situation.


When I want non-admins to upload images, I provide a formset to upload a 
bunch of images with descriptions (kinda like Mezzanine's gallery), 
instead of allowing them to upload through the Rich Text editor. I then 
present the images as a gallery (with a lightbox and all). That's pretty 
easy with Django's built-in form capabilities. It looks like you really 
need them to include the images inline with the text, so this approach 
might not be viable for you.



On 2017-06-04 4:13 PM, Diego Castro wrote:


It really is necessary for my project that users
(non-administrators) can upload images when they use
richtextfield, I am creating a platform to publish low-cost
science experiments and I need registered users could easily
contribute to the platform.

I would like to have a separate media library for each user, is it
possible to do this on  mezzanine?








El domingo, 4 de junio de 2017, 16:18:42 (UTC-5), Eduardo Rivas escribiĂł:

Hmm, I would assume that the media library is not going to work
for non admin users. You'll have to implement file uploads
yourself. I would start by checking how Mezzanine handles file
uploads in TinyMCE and emulating that without the admin checks.

But first make sure you want non admin users uploading files to
your server. I would recommend implementing a regular file field
in the form and using the rich text editor for text only.

On Jun 4, 2017 3:12 PM, "Diego Castro" > wrote:

 Thank you for your answer Eduardo. No, I had not included
{{form.media}}. Now the richtextfield is displayed correctly,
thank you very much. But there is a problem, if I want to load
an image the following error appears

|


  Pagenotfound (404)

RequestMethod:  GET
RequestURL:
http://127.0.0.1:8000/fisica/undefined/?pop=5&type=image
<http://127.0.0.1:8000/fisica/undefined/?pop=5&type=image>
Raised by:  mezzanine.pages.views.page

|

I am putting in the template the following:

|

|
 {% csrf_token %}
 {{ form.media }}
 {{ form.as_p }}
 Crear


I am doing something wrong?
-- 
You received this message because you are subscribed to the

Google Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from
it, send an email to mezzanine-use...@googlegroups.com
.
For more options, visit https://groups.google.com/d/optout
<https://groups.google.com/d/optout>.

--
You received this message because you are subscribed to the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to mezzanine-users+unsubscr...@googlegroups.com 
<mailto:mezzanine-users+unsubscr...@googlegroups.com>.

For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] CSS Vendor Prefixes Strategy + SASS + LiveReload server

2017-06-30 Thread Eduardo Rivas

Hey Roger. Here's how I've done it in the past:

- Create a Django app in your project to hold your static files and 
templates (I name it "theme" since it holds everything related to the 
visual styles of the site).


- Inside theme/static/ setup your frontend tooling. I use Webpack to 
compile SASS, run Autoprefixer, and add ES6 transpilation to my JS. You 
can use whatever you like (grunt, gulp, bash scripts, etc). I configure 
it to output my JS and CSS to theme/static/build, creating main.css and 
main.js. I then point my templates to static/build/main.css and 
static/build/main.js.


- Nearly all task runners support LiveReload via a plugin or something. 
I use the Webpack plugin and installed an extension in my browser. Works 
perfect.


At this point the only thing pending is deployment. I choose to not 
track the build/ folder in git, so I have extended my Fabric setup to 
run Webpack locally in production mode on each deploy and copy the 
assets to the server (on the same location as the dev assets, so no 
changes in templates are required). This gives me minified and uglified 
production builds. Django Compressor handles cache invalidation.


Hope that helps!


On 2017-06-30 2:51 AM, Roger van Schie wrote:
Any suggestions for an efficient methodology to deal with css vendor 
prefixes?


As this will probably tie in, anyone got a nice strategy for using 
SASS? ( I would really love to use Foundation6 with mezzanine, I find 
the code much more semantic than bootstrap and way quicker to code)( I 
know I can use Foundation6 with just css, but that defeats the purpose 
of saving time)


As a bonus bonus, anyone running a livereload type of server with 
Mezzanine for development? (I hate having to push refresh all the 
time, really wastes time)


Thanks
Roger

--
You received this message because you are subscribed to the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to mezzanine-users+unsubscr...@googlegroups.com 
.

For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Extending Displayable Model, Views

2017-07-06 Thread Eduardo Rivas
I see you created a urlconf for your app, but have you added it to your
root urls.py? If so, is if above or below Mezzanine's catch-all pattern?

On Jul 6, 2017 9:12 PM,  wrote:

> Hi, thanks for such a great resource! I have googled around for a few days
> and have made some headway this problem, but have hit a wall. I'm trying to
> use the Displayable model to create an easy way to add news stories and
> have them displayed as a simple list view, which is very similar behavior
> to the blog app. If there is a better solution using a ForeignKey, please
> point me in the right direction!
>
> I read an older post
> 
>  about
> creating a new Displayable, and have used Mezzanine's source code to
> successfully extend the Displayable model and have it appear correctly in
> the admin. The issue now is that I can't seem to get the views (views.py)
> and url patterns to work. When clicked "view on site" from the admin, the
> url seems to grab the model's slug ("news"), but ends up linking to
> http://localhost:8000/en/admin//news/%28u/, and doesn't work
> linking directly to the actual item's slug. Exploring the source code for
> Mezzanine's blog's urls and views, I'm unsure how to correctly refactor. I
> understand that I will need to create my own templates to act as 
> blog_post_list.html
> and blog_post_detail.html, but don't know how to create the super basic
> views to point to them.
>
> models.py:
> class News(Displayable, RichText):
>
> pagetitle = models.CharField('Title', max_length=255, blank=True)
> url = models.CharField('Link', max_length=255, blank=True)
> summary = models.CharField('Summary', max_length=255, blank=True)
> date = models.DateField(_("Date"), default=datetime.date.today)
> categories = models.ManyToManyField("NewsCategory",
> verbose_name=_("Categories
> (Magazine, Award, etc.)"),
> blank=True,
> related_name="newsitems")
> related_news = models.ManyToManyField("self",
>  verbose_name=_("Related News"),
> blank=True)
>
> class Meta:
> verbose_name = _("News Item")
> verbose_name_plural = _("News Items")
>
> def get_absolute_url(self):
> url_name = 'news'
> kwargs = {
> 'slug': self.slug,
> }
> return (url_name, (), kwargs)
>
>
> class NewsCategory(Slugged):
> """
> A category for grouping news items into a series.
> """
>
> class Meta:
> verbose_name = _("News Category")
> verbose_name_plural = _("News Categories")
> ordering = ("title",)
>
> @models.permalink
> def get_absolute_url(self):
> return ("news_item_list_category", (), {"category": self.slug})
>
> admin.py
> news_fieldsets = deepcopy(DisplayableAdmin.fieldsets)
> news_fieldsets[0][1]["fields"].insert(1, "categories")
> news_fieldsets[0][1]["fields"].extend(["pagetitle", "url", "summary",
> "date"])
> news_fieldsets = list(news_fieldsets)
> news_fieldsets.insert(1, (_("Other News"), {
> "classes": ("collapse-closed",),
> "fields": ("related_news",)}))
> news_list_filter = deepcopy(DisplayableAdmin.list_filter) +
> ("categories",)
>
>
> class NewsAdmin(DisplayableAdmin):
> """
> Admin class for news posts.
> """
>
> fieldsets = news_fieldsets
> # list_display = news_list_display
> list_filter = news_list_filter
> filter_horizontal = ("categories", "related_news",)
>
> def save_form(self, request, form, change):
> """
> Super class ordering is important here - user must get saved first.
> """
> DisplayableAdmin.save_form(self, request, form, change)
> return DisplayableAdmin.save_form(self, request, form, change)
>
> class NewsCategoryAdmin(BaseTranslationModelAdmin):
> """
> Admin class for blog categories. Hides itself from the admin menu
> unless explicitly specified.
> """
>
> fieldsets = ((None, {"fields": ("title",)}),)
>
> def has_module_permission(self, request):
> """
> Hide from the admin menu unless explicitly set in
> ``ADMIN_MENU_ORDER``.
> """
> for (name, items) in settings.ADMIN_MENU_ORDER:
> if "blog.BlogCategory" in items:
> return True
> return False
>
>
> admin.site.register(News, NewsAdmin)
> admin.site.register(NewsCategory, NewsCategoryAdmin)
>
> urls.py:
> from .models import News
> import .views
>
> _slashes = (
> "/" if settings.BLOG_SLUG else "",
> "/" if settings.APPEND_SLASH else "",
> )
>
> urlpatterns = patterns(
> 'news.views',
> url("^%s(?P.*)%s$" % _slashes, "news", name="news"),
> )
>
> views.py:
> from django.shortcuts import render
>
> def news(request, slug):
> return HttpResponse('Test')
>
> The view is currently not even returning "Test." Any direction at all
> wo

RE: [mezzanine-users] Extending Displayable Model, Views

2017-07-07 Thread Eduardo Rivas
Could you share the error message you’re getting?

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Re: Extending Displayable Model, Views

2017-07-08 Thread Eduardo Rivas
Have you included your url patterns before Mezzanine's catch-all in the
root conf?

On Jul 7, 2017 1:37 PM,  wrote:

Solved that, and have been constantly 404'ing since. Saw another of your
posts Eduardo about i18n and middleware causing 404's on pages that don't
exist, but have disabled i18n and am still running into issue. It's almost
like the urls.py is not updating.

Here is the root url pattern I am using:
url("^news/", include("kdi.urls")),

And the urls.py for kdi:
url(r"^$", "kdi.views.newstest", name="newstest"),

And the `newstest` view:
def newstest(request, slug):
print "called!"
return HttpResponse('Test')


Expected behavior should be that navigation to domain/news will send the
request to `kdi.urls`, where it will accept any string (^$) and call the
`newstest` view to return the super simple response of "test". 404's every
time.




On Friday, July 7, 2017 at 11:11:38 AM UTC-7, marcusgu...@gmail.com wrote:
>
> Have solved the fully qualified path issue, but now throwing `'unicode'
> object has no attribute 'regex'` error. This one is more difficult to
> traceback.
>
> On Thursday, July 6, 2017 at 8:12:00 PM UTC-7, marcusgu...@gmail.com
> wrote:
>>
>> Hi, thanks for such a great resource! I have googled around for a few
>> days and have made some headway this problem, but have hit a wall. I'm
>> trying to use the Displayable model to create an easy way to add news
>> stories and have them displayed as a simple list view, which is very
>> similar behavior to the blog app. If there is a better solution using a
>> ForeignKey, please point me in the right direction!
>>
>> I read an older post
>> 
>>  about
>> creating a new Displayable, and have used Mezzanine's source code to
>> successfully extend the Displayable model and have it appear correctly in
>> the admin. The issue now is that I can't seem to get the views (views.py)
>> and url patterns to work. When clicked "view on site" from the admin, the
>> url seems to grab the model's slug ("news"), but ends up linking to
>> http://localhost:8000/en/admin//news/%28u/, and doesn't work
>> linking directly to the actual item's slug. Exploring the source code for
>> Mezzanine's blog's urls and views, I'm unsure how to correctly refactor. I
>> understand that I will need to create my own templates to act as 
>> blog_post_list.html
>> and blog_post_detail.html, but don't know how to create the super basic
>> views to point to them.
>>
>> models.py:
>> class News(Displayable, RichText):
>>
>> pagetitle = models.CharField('Title', max_length=255, blank=True)
>> url = models.CharField('Link', max_length=255, blank=True)
>> summary = models.CharField('Summary', max_length=255, blank=True)
>> date = models.DateField(_("Date"), default=datetime.date.today)
>> categories = models.ManyToManyField("NewsCategory",
>> verbose_name=_("Categories
>> (Magazine, Award, etc.)"),
>> blank=True,
>> related_name="newsitems")
>> related_news = models.ManyToManyField("self",
>>  verbose_name=_("Related News"),
>> blank=True)
>>
>> class Meta:
>> verbose_name = _("News Item")
>> verbose_name_plural = _("News Items")
>>
>> def get_absolute_url(self):
>> url_name = 'news'
>> kwargs = {
>> 'slug': self.slug,
>> }
>> return (url_name, (), kwargs)
>>
>>
>> class NewsCategory(Slugged):
>> """
>> A category for grouping news items into a series.
>> """
>>
>> class Meta:
>> verbose_name = _("News Category")
>> verbose_name_plural = _("News Categories")
>> ordering = ("title",)
>>
>> @models.permalink
>> def get_absolute_url(self):
>> return ("news_item_list_category", (), {"category": self.slug})
>>
>> admin.py
>> news_fieldsets = deepcopy(DisplayableAdmin.fieldsets)
>> news_fieldsets[0][1]["fields"].insert(1, "categories")
>> news_fieldsets[0][1]["fields"].extend(["pagetitle", "url", "summary",
>> "date"])
>> news_fieldsets = list(news_fieldsets)
>> news_fieldsets.insert(1, (_("Other News"), {
>> "classes": ("collapse-closed",),
>> "fields": ("related_news",)}))
>> news_list_filter = deepcopy(DisplayableAdmin.list_filter) +
>> ("categories",)
>>
>>
>> class NewsAdmin(DisplayableAdmin):
>> """
>> Admin class for news posts.
>> """
>>
>> fieldsets = news_fieldsets
>> # list_display = news_list_display
>> list_filter = news_list_filter
>> filter_horizontal = ("categories", "related_news",)
>>
>> def save_form(self, request, form, change):
>> """
>> Super class ordering is important here - user must get saved
>> first.
>> """
>> DisplayableAdmin.save_form(self, request, form, change)
>> return DisplayableAdmin.save_form(self, request, form, change)
>>
>> class Ne

RE: [mezzanine-users] Re: Extending Displayable Model, Views

2017-07-09 Thread Eduardo Rivas
Glad it’s all sorted out. 

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


RE: [mezzanine-users] default settings for users / blog posts

2017-07-10 Thread Eduardo Rivas
Hello Patrick.

1. I don’t think there’s a setting to require a login for blog posts. I suggest 
you override Mezzanine’s blog patterns in your root urlconf and apply  the 
login_required decorator to the blog views. See: 
https://stackoverflow.com/a/5771286/1330003
2. If you want to apply custom logic to the signup process you can go with 
signals. Specifically the post_save signal on the User model. 
https://docs.djangoproject.com/en/1.11/topics/signals/

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


RE: [mezzanine-users] default settings for users / blog posts

2017-07-11 Thread Eduardo Rivas
The “is_staff” flag only allows users to log into the admin. Groups and 
permissions determine which models they can add/edit/delete. 

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Can't Turn Keywords On

2017-07-21 Thread Eduardo Rivas
Hey Malik. Welcome to the Mezzanine community.

- To add keywords, enter them as comma separated list in the admin Meta
panel on objects that support them (Blog posts, pages, etc).

- If you're using Mezzanine's default templates they should just appear in
the blog pages once you add some keywords in the admin. If you're using
custom templates, you'll need to load blog_tags and call the {%
keywords_for %} tag. Here's how Mezzanine does it by default
https://github.com/stephenmcd/mezzanine/blob/master/mezzanine/blog/templates/blog/includes/filter_panel.html#L54


On Jul 21, 2017 5:33 PM, "Malik Rumi"  wrote:

Hello. New user, first post.

I have been looking for over an hour and I give up. How and where do I
'turn on' the keywords for my blog?
It took me a while to figure out that you call them 'keywords' instead of
'tags'. I found the keywords_for template tag, I found the template for
blog list and detail. None of it is commented out, so I would think it
would 'just work', or 'just show up', but it doesn't and I have not been
able to figure out why. I looked in the admin for a way to add them, and in
several files called admin.py for how to register them, all without success
- or at least, understanding.
I also see no way to create new keywords. I figured out how to create
categories, and they show up on the right side as expected, but there are
no keywords in sight, and no tag cloud, and no way to make them.
Please tell me what I am missing. Thanks.

-- 
You received this message because you are subscribed to the Google Groups
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Re: Customizing search URL

2017-09-12 Thread Eduardo Rivas
Yes it will, because the template uses the {% url %} tag and will 
respect your urlpatterns. Just make sure you set name="search" in your 
overridden pattern.


On 2017-09-12 9:19 AM, si...@e5r.no wrote:

tirsdag 12. september 2017 14.14.13 UTC+2 skrev Christian Kuper fĂžlgende:

Just create a new empty template and put {% extends
'template_to_extend' %} at the top. Then you get a template with
your custom name and the same content as the build in template.


Yes, but that doesn’t override the form action URL constructed on line
2 in `search_form.html`, right?

-- Simen
--
You received this message because you are subscribed to the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to mezzanine-users+unsubscr...@googlegroups.com 
.

For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Re: How can I do to create/edit as when using PageAdmin and list as when not using PageAdmin?

2017-09-14 Thread Eduardo Rivas

When I develop a Mezzanine site, there's usually two types of models I use:

1. Custom Page types. These are models that users want to incorporate 
into the page menu, and they must be editable/orderable from the page 
tree in the admin. In this case the model must inherit from 
mezzanine.pages.models.Page and the admin class must inherit from 
mezzanine.pages.admin.PageAdmin.


2. Displayable models. These are models we don't want to incorporate 
into the page menu, we want them to have their own section in the public 
site and their own list-enabled admin interface. The prime example is 
Mezzanine's built-in blog. It has it's own admin and it's own urls to 
display the BlogPost list and detail views. In this case the model must 
inherit from mezzanine.core.models.Displayable and the admin class from 
mezzanine.core.admin.DisplayableAdmin.


It looks to me like you want to go with approach #2. I suggest you 
re-write your models to use the Displayable base model and admin.


I gave a talk last year regarding this topic at DjangoCon. It explains 
how to convert a normal Django app into a Displayable-based Mezzanine 
app. Hopefully it'll be useful: https://www.youtube.com/watch?v=yVAmMXES2EU



On 2017-09-14 9:36 AM, Joseph Mohan wrote:
Yes, i've ran into this sort of thing a few times and not been able to 
figure an easy way so I try to use non-Page models..


A solution that I have used is to create a custom admin page and show 
a list of your custom pages. Not an elegant solution at all.


I'm really interested to see if ayone else ever deals with this!

On Thu, Sep 14, 2017 at 2:10 PM, Rainell Dilou GĂłmez 
mailto:rainell.di...@gmail.com>> wrote:


Yes, I've illustrated above, if I do it like in Django Polls
Tutorial, just admin.site.register (Ingredient)

the listing will be ok, but in this case, the rendering of
creating/editing page isn't convenient, considering the number of
fields that need to be filled. For the creating/editing page would
be much more convenient to obtain a result equal to that obtained
using PageAdmin.

The most convenient result would be a simple listing (see third
image), which we can obtain following the example of Django Polls
Tutorial ( just admin.site.register(Ingredient) ) and an
creat/edit page as the one we can obtain using PageAdmin (
dmin.site.register(Ingredient, PageAdmin). See first image ). But
how to do it?


Il giorno giovedĂŹ 14 settembre 2017 13:12:56 UTC+2, Rainell Dilou
GĂłmez ha scritto:

Hello,
I have created a custom content type and I have a problem with
the listing in the admin panel. If I extends PageAdmin

|


admin.site.register(Ingredient,PageAdmin)
|

the create/edit page is rendered as in the image





and this is great for creating and editing, but the listing in
the page section, as show in the following image, is a problem
because the Ingredients (my custom content type) will be many,
will be hundreds.





If instead I don't extend PageAdmin

|
admin.site.register(Ingredient)
|

my custom content type list is rendered as in the following
image, in a more convenient way, considering that there will
be hundreds of Ingredients




but the create/edit page will be rendered as in the next
image, and it isn't convenient, considering that the fields
are twice as many as are shown in this image.





So how can I do to create/edit as when using PageAdmin and
list as when not using PageAdmin?

-- 
You received this message because you are subscribed to the Google

Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it,
send an email to mezzanine-users+unsubscr...@googlegroups.com
.
For more options, visit https://groups.google.com/d/optout
.


--
You received this message because you are subscribed to the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to mezzanine-users+unsubscr...@googlegroups.com 


Re: [mezzanine-users] Re: How can I do to create/edit as when using PageAdmin and list as when not using PageAdmin?

2017-09-14 Thread Eduardo Rivas
What have you tried? Django should create the migration when you swap 
out the subclasses. It's mostly going to remove fields since Page is a 
subclass of Displayable anyways.


There's also the nuclear option of just migrating your app back to zero 
to delete the tables and just create a new migration history with the 
correct parent class. Most of the time I don't mind doing this in 
development because it's just dummy data anyways. However, if losing 
data is not an option, you can dump the Page-based data to a fixture, 
manually remove the fields you don't need, and reuse the fixture to 
restore the Displayable-based model.



On 2017-09-14 4:14 PM, Andrey inte wrote:

Is there a way to migrate from Page to Displayable?
I have tried and it seems to be a pain...



--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Does Orderable / Sortable Work on Editable Template Tag?

2017-09-15 Thread Eduardo Rivas
I don't think so. The Orderable abstract model is designed for inlines 
only, and the {% editable %} template tag doesn't support that.


On 2017-09-15 9:55 AM, Matt Mansour wrote:

Hi All -

I am looking to create a page of images that are both sortable and in 
a grid format - instead of each image stacked in rows like in the 
admin inlines.


I am digging into jQuery's sortable and breaking apart how it's used 
in Mezzanine. I am making progress but I am curious if I could achieve 
the sorting I am looking for by simply wrapping a list of  images in 
an editable template tag?  Something like


{%  editable  page.sort_images  %}
Code to render list of images to be sorted
{% endeditable %}
--
You received this message because you are subscribed to the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to mezzanine-users+unsubscr...@googlegroups.com 
.

For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Does Orderable / Sortable Work on Editable Template Tag?

2017-09-15 Thread Eduardo Rivas

No problem :)

I wouldn't worry much about ordering if you're expecting to manage tens 
of items. In my mind, manual ordering only makes sense when the amount 
of items is manageable and you want to make sure some appear first. For 
something like this "newest first" works fine IMO.


On 2017-09-15 10:07 AM, Matt Mansour wrote:
Thanks for the quick reply. My objective was the lazy approach and 
your quick reply was faster than me trying it. I'll continue using 
jQuery ui / sortable.


I wish creating a grid view for inlines was a relatively easy job. But 
I don't have time for tackle that one. I am sure some would find a 
toggle to grid inline useful, as galleries can have 100 + images for 
one gallery.


Drag sorting that many images is much easier in a grid format versus a 
long row of images.


On Friday, September 15, 2017 at 8:57:17 AM UTC-7, Eduardo Rivas wrote:

I don't think so. The Orderable abstract model is designed for
inlines only, and the {% editable %} template tag doesn't support
that.

On 2017-09-15 9:55 AM, Matt Mansour wrote:

Hi All -

I am looking to create a page of images that are both sortable
and in a grid format - instead of each image stacked in rows like
in the admin inlines.

I am digging into jQuery's sortable and breaking apart how it's
used in Mezzanine. I am making progress but I am curious if I
could achieve the sorting I am looking for by simply wrapping a
list of  images in an editable template tag?  Something like

{%  editable  page.sort_images  %}
Code to render list of images to be sorted
{% endeditable %}
-- 
You received this message because you are subscribed to the

Google Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it,
send an email to mezzanine-use...@googlegroups.com .
For more options, visit https://groups.google.com/d/optout
<https://groups.google.com/d/optout>.


--
You received this message because you are subscribed to the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to mezzanine-users+unsubscr...@googlegroups.com 
<mailto:mezzanine-users+unsubscr...@googlegroups.com>.

For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Does Orderable / Sortable Work on Editable Template Tag?

2017-09-15 Thread Eduardo Rivas
Cool! Glad you've enjoyed it so far. Hope it all works out.

On Sep 15, 2017 10:30 AM, "Matt Mansour"  wrote:

> That said, just want to put out there that Mezzanine has really helped a
> lot for this project. For example, another requirement is deep
> categorization.  It's nice to see how Mezzanine handles that easily without
> tons of database queries.
>
> Overall loving Mezzanine. This is just one of those times where I'll have
> to create a page outside the admin, In this case for easily sorting and
> grouping many images.
>
> On Friday, September 15, 2017 at 9:22:30 AM UTC-7, Matt Mansour wrote:
>>
>> In this case I have to find a solution.  The editors are not happy. Makes
>> sense. These are galleries of homes and locations. Some locations have 100
>> + photos. Editors need to be able to quickly order and group a gallery
>> however they wish. They have a few thousand galleries to create.
>>
>> A gallery might start with 20 shots of the exterior. Then there might be
>> 5 kitchen shots. 10 bedroom shots. 10 living room shots. 20 shots of the
>> surrounding neighborhood.
>>
>> With that many images; dragging to sort and group takes much longer in a
>> row format (admin inlines) versus grid format.
>>
>> On Friday, September 15, 2017 at 9:12:09 AM UTC-7, Eduardo Rivas wrote:
>>>
>>> No problem :)
>>>
>>> I wouldn't worry much about ordering if you're expecting to manage tens
>>> of items. In my mind, manual ordering only makes sense when the amount of
>>> items is manageable and you want to make sure some appear first. For
>>> something like this "newest first" works fine IMO.
>>> On 2017-09-15 10:07 AM, Matt Mansour wrote:
>>>
>>> Thanks for the quick reply. My objective was the lazy approach and your
>>> quick reply was faster than me trying it. I'll continue using jQuery ui /
>>> sortable.
>>>
>>> I wish creating a grid view for inlines was a relatively easy job. But I
>>> don't have time for tackle that one. I am sure some would find a toggle to
>>> grid inline useful, as galleries can have 100 + images for one gallery.
>>>
>>> Drag sorting that many images is much easier in a grid format versus a
>>> long row of images.
>>>
>>> On Friday, September 15, 2017 at 8:57:17 AM UTC-7, Eduardo Rivas wrote:
>>>>
>>>> I don't think so. The Orderable abstract model is designed for inlines
>>>> only, and the {% editable %} template tag doesn't support that.
>>>> On 2017-09-15 9:55 AM, Matt Mansour wrote:
>>>>
>>>> Hi All -
>>>>
>>>> I am looking to create a page of images that are both sortable and in a
>>>> grid format - instead of each image stacked in rows like in the admin
>>>> inlines.
>>>>
>>>> I am digging into jQuery's sortable and breaking apart how it's used in
>>>> Mezzanine. I am making progress but I am curious if I could achieve the
>>>> sorting I am looking for by simply wrapping a list of  images in an
>>>> editable template tag?  Something like
>>>>
>>>> {% editable page.sort_images %}
>>>>
>>>> Code to render list of images to be sorted
>>>>
>>>> {% endeditable %}
>>>>
>>>> --
>>>> You received this message because you are subscribed to the Google
>>>> Groups "Mezzanine Users" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>> an email to mezzanine-use...@googlegroups.com.
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>>
>>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups "Mezzanine Users" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to mezzanine-use...@googlegroups.com.
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>>
>>> --
> You received this message because you are subscribed to the Google Groups
> "Mezzanine Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to mezzanine-users+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Re: Customizing search URL

2017-09-19 Thread Eduardo Rivas
Hmm, I don't think so. Registering a single URL is as easy as changing a 
setting (urls.py is basically a configuration file anyways). I would 
even go as far as to say we can get rid of BLOG_SLUG and simply 
include("blog.urls") under whatever prefix you want in urls.py.


On 2017-09-19 10:29 AM, si...@e5r.no wrote:

Yes, that works, it’s the solution I described in the first post.

The question is: would it be good to add a setting for it in Mezzanine
to make it trivial to customize, just like there is a setting to
customize the default blog slug (the `BLOG_SLUG` setting)?

-- Simen
--
You received this message because you are subscribed to the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to mezzanine-users+unsubscr...@googlegroups.com 
.

For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] How to view the cart in Cartridge?

2017-09-23 Thread Eduardo Rivas
Cartridge default templates include a "view cart" button in the top 
right corner of the site. You can see it in the demo site: 
http://mezzanine.jupo.org/blog/


Otherwise the cart is accessible at all times at the /shop/cart URL.

On 2017-09-23 5:16 PM, jenia mtl wrote:

Hello.

I can't figure out where is the cart? There is no page for it it 
seems. If it's so, do I need to implement it myself?


Thanks
--
You received this message because you are subscribed to the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to mezzanine-users+unsubscr...@googlegroups.com 
.

For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] How to extend cartridge?

2017-09-23 Thread Eduardo Rivas
To extend templates: Create a template in your project under the same 
path as the Cartridge template. For example, if you want to provide your 
own template for Products, create a template in 
your_app/templates/shop/product.html. Here's an explanation of Django's 
template loading: 
https://docs.djangoproject.com/en/1.11/ref/templates/api/#django.template.loaders.app_directories.Loader


Here are all the Cartridge templates you can override in your own 
project: 
https://github.com/stephenmcd/cartridge/tree/master/cartridge/shop/templates


To extend views: You can create your own views and register them in the 
same URL pattern as the view you want to override. If you want to 
override the view that renders the checkout page, you can register your 
own view at the /shop/checkout path. Make sure your overriden views are 
registered before the Cartridge urlpatterns. For example


url("^shop/checkout/", my_views.my_custom_checkout, name="shop_checkout")

Here's Cartridge's url config which lists all urls managed by Cartridge: 
https://github.com/stephenmcd/cartridge/blob/master/cartridge/shop/urls.py


To override models you can use Mezzanine's field injection, documented 
here: http://mezzanine.jupo.org/docs/model-customization.html. Notice 
this is useful only to add new fields to a model, not to remove or alter 
existing fields. For that you might need to maintain your own fork.


Finally, remember Cartridge comes with a bunch of settings you can 
customize to modify it's behavior, you can review them all here: 
http://cartridge.jupo.org/configuration.html


On 2017-09-23 5:19 PM, jenia mtl wrote:

Hello.

I want to change cartridge a little. Change the templates, change the 
views and do on.


I did it by changing the code of the app itself. But I do not think 
it's the best idea for obvious reason (when the app will be upgrades, 
I'll be hard to merge my changes for example).


How do I extend Cartridge? Is there a mechanism to extend, override 
and so on Cartridge?


Thanks
--
You received this message because you are subscribed to the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to mezzanine-users+unsubscr...@googlegroups.com 
.

For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Cartridge, add product

2017-09-23 Thread Eduardo Rivas
You might have a problem with Pillow (the image manipulation library). 
Some versions are not working with Mezzanine 4.2.3 and will output the 
full-size image instead of a thumbnail. The solution is to downgrade to 
Pillow 4.1.1 or upgrade to Mezzanine's master branch. See: 
https://github.com/stephenmcd/mezzanine/issues/1785



On 2017-09-23 3:11 PM, jenia mtl wrote:

Hello everyone.

When I add product-images to a product, and then go to that product's 
page, the images list is rendered incorrectly.
Specifically, the images are not in one neat thumbnail line under the 
product image. Instead the thumbnails are of different sizes (the size 
of the actual image) and not aligned ofcourse.


Can someone please tell me what I'm doing wrong? Why are my thumbnail 
images not placed correctly in a row?


Thanks in advance.
--
You received this message because you are subscribed to the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to mezzanine-users+unsubscr...@googlegroups.com 
.

For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] WHy does deploying mezzanine on digital ocean shows INternal service error?

2017-09-24 Thread Eduardo Rivas
It looks like you've followed a third-party tutorial that has instructed 
you to install all the dependencies manually. Have you tried following 
the official Mezzanine tutorial? It will automate all the installation 
steps, including the dependency installation, database configuration, 
static files, etc.


Here's the link to the official tutorial: 
http://mezzanine.jupo.org/docs/deployment.html#tutorial


I suggest you wipe your Droplet and follow the steps shown there (you 
are in Case 1: Deploying to a brand new server). Read the instructions 
completely before starting, and if you encounter any errors please 
include a traceback and all the steps you followed until the problem 
appeared.


Good luck!


On 2017-09-24 9:54 PM, francois lemestre wrote:

Hi everyone, I am desperate.

I tried to deploy mezanine, following this 
https://perezprogramming.com/blog/deploy-mezzanine-to-ubuntu-14-server-on-digitalocean-with-fabric/ 
but i got *Internal service error*.


I tried this also 
https://www.digitalocean.com/community/questions/deploying-django-mezzanine-using-fabric, 
same I got *Internal service error*.


I also tried the documentation of mezzanine. I got the same thing. 
However, my website works well locally and also when i create a 
virtualenv on the droplet. The problem appears when i do*fab all



Please help me. Thanks
*

--
You received this message because you are subscribed to the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to mezzanine-users+unsubscr...@googlegroups.com 
.

For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Re: How to create comments section?

2017-09-24 Thread Eduardo Rivas
Mezzanine provides a generic ThreadedComment model exactly for this. 
You'll need to inject CommentField into the Product model, but 
everything else should be smooth sailing.


See http://mezzanine.jupo.org/docs/utilities.html#threaded-comments

On 2017-09-24 4:27 PM, jenia mtl wrote:

(Per product)

On Sunday, September 24, 2017 at 6:27:34 PM UTC-4, jenia mtl wrote:

Hello.


What is the simplest way to create a comments section in Cartridge?


Thanks

--
You received this message because you are subscribed to the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to mezzanine-users+unsubscr...@googlegroups.com 
.

For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Re: how to access page content programmatically?

2017-09-24 Thread Eduardo Rivas

Let's start with the get() call

from mezzanine.pages.models import Page
mypage = Page.objects.get(title="My title")

Since the "content" field is part of the RichTextPage subclass, we need 
to access it through the relation: mypage.richtextpage.content.


If the page were a Form, it would be: mypage.form.content.

If you don't know what kind of Page subclass you're dealing with, you 
can call get_content_model() to figure it out: mypage.get_content_model()


That would return RichTextPage, or Form, or your own custom page types. 
You can chain field access as well: mypage.get_content_model().some_field


On 2017-09-24 2:23 PM, Malik Rumi wrote:



On Sunday, September 24, 2017 at 1:19:51 PM UTC-7, Malik Rumi wrote:


I have seen this post:

https://groups.google.com/forum/#!searchin/mezzanine-users/shell%7Csort:relevance/mezzanine-users/BhEelJ3gvf4/4g4QZwwXNPQJ





It does not answer the question, how to access page content
programmatically?


update:
i.e., the Page equivalent of
>>> testpage2 = BlogPost.objects.get(title__contains="091517 status")
>>> testpage2.content
text displays
--
You received this message because you are subscribed to the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to mezzanine-users+unsubscr...@googlegroups.com 
.

For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] WHy does deploying mezzanine on digital ocean shows INternal service error?

2017-09-25 Thread Eduardo Rivas
On which part of the tutorial did that happen? What other commands did 
you run before that?



On 2017-09-25 1:28 AM, francois lemestre wrote:

Hi Eduardo,
The name of the project is coursofrancesco
Here is what i get now

pg_dump -FC coursofrancesco > /tmp/last.db ->

[104.131.97.134] out: sudo: unknown user: postgres
[104.131.97.134] out: sudo: unable to initialize policy plugin
[104.131.97.134] out:

Fatal error: sudo() received nonzero return code 1 while executing!

Requested: pg_dump -Fc coursofrancesco > /tmp/last.db
Executed: sudo -S -p 'sudo password:'  -u "postgres" /bin/bash -l -c 
"cd / >/de v/null && pg_dump -Fc coursofrancesco > /tmp/last.db"


Aborting.
Disconnecting from 104.131.97.134... done.


On Mon, Sep 25, 2017 at 1:29 AM, Eduardo Rivas 
mailto:jerivasmel...@gmail.com>> wrote:


It looks like you've followed a third-party tutorial that has
instructed you to install all the dependencies manually. Have you
tried following the official Mezzanine tutorial? It will automate
all the installation steps, including the dependency installation,
database configuration, static files, etc.

Here's the link to the official tutorial:
http://mezzanine.jupo.org/docs/deployment.html#tutorial
<http://mezzanine.jupo.org/docs/deployment.html#tutorial>

I suggest you wipe your Droplet and follow the steps shown there
(you are in Case 1: Deploying to a brand new server). Read the
instructions completely before starting, and if you encounter any
errors please include a traceback and all the steps you followed
until the problem appeared.

Good luck!


On 2017-09-24 9:54 PM, francois lemestre wrote:

Hi everyone, I am desperate.

I tried to deploy mezanine, following this

https://perezprogramming.com/blog/deploy-mezzanine-to-ubuntu-14-server-on-digitalocean-with-fabric/

<https://perezprogramming.com/blog/deploy-mezzanine-to-ubuntu-14-server-on-digitalocean-with-fabric/>
but i got *Internal service error*.

I tried this also

https://www.digitalocean.com/community/questions/deploying-django-mezzanine-using-fabric

<https://www.digitalocean.com/community/questions/deploying-django-mezzanine-using-fabric>,
same I got *Internal service error*.

I also tried the documentation of mezzanine. I got the same
thing. However, my website works well locally and also when i
create a virtualenv on the droplet. The problem appears when i
do*fab all


Please help me. Thanks
*

-- 
You received this message because you are subscribed to the

Google Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it,
send an email to mezzanine-users+unsubscr...@googlegroups.com
<mailto:mezzanine-users+unsubscr...@googlegroups.com>.
For more options, visit https://groups.google.com/d/optout
<https://groups.google.com/d/optout>.


-- 
You received this message because you are subscribed to a topic in

the Google Groups "Mezzanine Users" group.
To unsubscribe from this topic, visit
https://groups.google.com/d/topic/mezzanine-users/LEMyi3HKk04/unsubscribe
<https://groups.google.com/d/topic/mezzanine-users/LEMyi3HKk04/unsubscribe>.
To unsubscribe from this group and all its topics, send an email
to mezzanine-users+unsubscr...@googlegroups.com
<mailto:mezzanine-users+unsubscr...@googlegroups.com>.
For more options, visit https://groups.google.com/d/optout
<https://groups.google.com/d/optout>.


--
You received this message because you are subscribed to the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to mezzanine-users+unsubscr...@googlegroups.com 
<mailto:mezzanine-users+unsubscr...@googlegroups.com>.

For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] WHy does deploying mezzanine on digital ocean shows INternal service error?

2017-09-25 Thread Eduardo Rivas
Did you wipe your server and run "fab secure" and "fab all"? It sounds 
like you don't have Postgres installed.



On 2017-09-25 2:18 PM, francois lemestre wrote:

Hello,

This happened after i did "fab deploy"

On Mon, Sep 25, 2017 at 4:56 PM, Eduardo Rivas 
mailto:jerivasmel...@gmail.com>> wrote:


On which part of the tutorial did that happen? What other commands
did you run before that?


On 2017-09-25 1:28 AM, francois lemestre wrote:

Hi Eduardo,
The name of the project is coursofrancesco
Here is what i get now

pg_dump -FC coursofrancesco > /tmp/last.db ->

[104.131.97.134] out: sudo: unknown user: postgres
[104.131.97.134] out: sudo: unable to initialize policy plugin
[104.131.97.134] out:

Fatal error: sudo() received nonzero return code 1 while executing!

Requested: pg_dump -Fc coursofrancesco > /tmp/last.db
Executed: sudo -S -p 'sudo password:'  -u "postgres"  /bin/bash
-l -c "cd / >/de v/null && pg_dump -Fc coursofrancesco >
/tmp/last.db"

Aborting.
Disconnecting from 104.131.97.134... done.


On Mon, Sep 25, 2017 at 1:29 AM, Eduardo Rivas
mailto:jerivasmel...@gmail.com>> wrote:

It looks like you've followed a third-party tutorial that has
instructed you to install all the dependencies manually. Have
you tried following the official Mezzanine tutorial? It will
automate all the installation steps, including the dependency
installation, database configuration, static files, etc.

Here's the link to the official tutorial:
http://mezzanine.jupo.org/docs/deployment.html#tutorial
<http://mezzanine.jupo.org/docs/deployment.html#tutorial>

I suggest you wipe your Droplet and follow the steps shown
there (you are in Case 1: Deploying to a brand new server).
Read the instructions completely before starting, and if you
encounter any errors please include a traceback and all the
steps you followed until the problem appeared.

Good luck!


On 2017-09-24 9:54 PM, francois lemestre wrote:

Hi everyone, I am desperate.

I tried to deploy mezanine, following this

https://perezprogramming.com/blog/deploy-mezzanine-to-ubuntu-14-server-on-digitalocean-with-fabric/

<https://perezprogramming.com/blog/deploy-mezzanine-to-ubuntu-14-server-on-digitalocean-with-fabric/>
but i got *Internal service error*.

I tried this also

https://www.digitalocean.com/community/questions/deploying-django-mezzanine-using-fabric

<https://www.digitalocean.com/community/questions/deploying-django-mezzanine-using-fabric>,
same I got *Internal service error*.

I also tried the documentation of mezzanine. I got the same
thing. However, my website works well locally and also when
i create a virtualenv on the droplet. The problem appears
when i do*fab all


Please help me. Thanks
*

-- 
You received this message because you are subscribed to the

Google Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails
from it, send an email to
mezzanine-users+unsubscr...@googlegroups.com
<mailto:mezzanine-users+unsubscr...@googlegroups.com>.
For more options, visit https://groups.google.com/d/optout
<https://groups.google.com/d/optout>.


-- 
You received this message because you are subscribed to a

topic in the Google Groups "Mezzanine Users" group.
To unsubscribe from this topic, visit

https://groups.google.com/d/topic/mezzanine-users/LEMyi3HKk04/unsubscribe

<https://groups.google.com/d/topic/mezzanine-users/LEMyi3HKk04/unsubscribe>.
To unsubscribe from this group and all its topics, send an
email to mezzanine-users+unsubscr...@googlegroups.com
<mailto:mezzanine-users+unsubscr...@googlegroups.com>.
For more options, visit https://groups.google.com/d/optout
<https://groups.google.com/d/optout>.


-- 
You received this message because you are subscribed to the

Google Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it,
send an email to mezzanine-users+unsubscr...@googlegroups.com
<mailto:mezzanine-users+unsubscr...@googlegroups.com>.
For more options, visit https://groups.google.com/d/optout
<https://groups.google.com/d/optout>.


-- 
You received this message because you are subscribed to a topic in

the Google Groups "Mezzanine Users" group.
To unsubscribe from this topic, visit
https://groups.google.com/d/topic/mezzanine-u

Re: [mezzanine-users] Custom content type extending Displayable accessing in template

2017-10-06 Thread Eduardo Rivas

Hello Hamza.

Displayable is an abstract model, which means you can use is as a base 
for your own models, but it doesn't exist in the database by itself. The 
fields defined in Displayable will simply become part of the model that 
inherits from it.


For example, if you create "class PortfolioItem(Displayable)" you'll be 
able to do:


item = PortofolioItem.objects.get(...)
item.title # This is provided by Displayable
item.slug # Also provided by Displayable

And yes, you'll need to provide your own views and urls to interact with 
models that inherit from Displayable. I recommend you take a look at 
mezzanine.blog for a great example of how to build models, views, and 
urls on top of Displayable.



On 2017-10-06 8:42 AM, Hamza Jutt wrote:

When extending from *Page* all you gotta do in template is access

|
{{page.some_model.some_field }}
|

but when extending *Displayable* that does not work. So How to access 
this in template. Or is there even a way without creating custom urls 
and views?


--
You received this message because you are subscribed to the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to mezzanine-users+unsubscr...@googlegroups.com 
.

For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Custom content type extending Displayable accessing in template

2017-10-06 Thread Eduardo Rivas

Access to model fields is the same in Python and in templates:

{{ my_model.title }} {# This comes from Displayable #}
{{ my_model.some_other_field }}

Now, you might be asking how to get "my_model" into the template context 
to begin with. The answer is to write a view that does it:


from django.shortcuts import render

def my_model_detail_view(request):
    context = {
    "my_model": MyModel.objects.get(...),
    }
    render(request, "my_template.html", context)

Regarding the blog posts, there's already a template tag that can fetch 
you recent posts:


{% load blog_tags %}
{% blog_recent_posts limit=3 as recent_posts %}
{% for post in recent_posts %}
...
{% endfor %}

I suggest you take a look at the source for this tag to see how 
Mezzanine handles it: 
https://github.com/stephenmcd/mezzanine/blob/master/mezzanine/blog/templatetags/blog_tags.py#L57



On 2017-10-06 2:24 PM, Hamza Jutt wrote:

Hello *Eduardo*!

*Thanks* for the detailed answer.

Now here is the thing When I said that I was extending from 
*Displayable *That was supposed to mean that I'm inheriting abstract 
model in my Custom content type. I can create items in database using 
*admin-site *and I've know a hefty amount about Django ORM. I know 
what displayable provides in that case. But what I was hoping for a 
similar method to access data in django template as in Docs You can 
access data of custom fields in model extended from *Page.*


|
{{page.some_model.title }}
{{page.some_model.slug }}
{{page.some_model.custom_field }}
|
What I got from your answer is there is no way to access data in 
django template of model which is inheriting Displayable as it is not 
in context. Only way to get that data is to use custom urls, views and 
templates. It's like just getting some basics but implement almost 
everything to get data from db (on url parameters or something). Then 
pass it as context to template response along with django template 
just like Blog.


Actually Our old app uses mezzenine but inherits everything from 
*Page*. And using that we can easily access data using page in context 
in django template. But that does seems wrong to create everything as 
page. But what I understood that If I were to fix it I will have to 
write all those urls and views by myself.


If I understood something wrong please help. Also I do have another 
question so if I have model inheriting *Displayable* and now I need 
info from that model in pages other that specific pages provided by 
custom urls and views. how would I do it. For *Example* I need 3 
recent blog posts on home page. So how would I access them. Would I 
have to write custom View for Home page and if so then I'm just 
overriding Home page default view as it is *RichTextPage* at this point.


If anything seems confusing I would be happy to provide further 
information.


Help is highly appreciated.

--
You received this message because you are subscribed to the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to mezzanine-users+unsubscr...@googlegroups.com 
.

For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Custom content type extending Displayable accessing in template

2017-10-06 Thread Eduardo Rivas
Also, here's I talk I gave regarding how to leverage Mezzanine to 
display content types using Displayable instead of Page. It might be 
useful for what you're building: https://www.youtube.com/watch?v=yVAmMXES2EU



On 2017-10-06 2:33 PM, Eduardo Rivas wrote:


Access to model fields is the same in Python and in templates:

{{ my_model.title }} {# This comes from Displayable #}
{{ my_model.some_other_field }}

Now, you might be asking how to get "my_model" into the template 
context to begin with. The answer is to write a view that does it:


from django.shortcuts import render

def my_model_detail_view(request):
    context = {
    "my_model": MyModel.objects.get(...),
    }
    render(request, "my_template.html", context)

Regarding the blog posts, there's already a template tag that can 
fetch you recent posts:


{% load blog_tags %}
{% blog_recent_posts limit=3 as recent_posts %}
{% for post in recent_posts %}
...
{% endfor %}

I suggest you take a look at the source for this tag to see how 
Mezzanine handles it: 
https://github.com/stephenmcd/mezzanine/blob/master/mezzanine/blog/templatetags/blog_tags.py#L57



On 2017-10-06 2:24 PM, Hamza Jutt wrote:

Hello *Eduardo*!

*Thanks* for the detailed answer.

Now here is the thing When I said that I was extending from 
*Displayable *That was supposed to mean that I'm inheriting abstract 
model in my Custom content type. I can create items in database using 
*admin-site *and I've know a hefty amount about Django ORM. I know 
what displayable provides in that case. But what I was hoping for a 
similar method to access data in django template as in Docs You can 
access data of custom fields in model extended from *Page.*


|
{{page.some_model.title }}
{{page.some_model.slug }}
{{page.some_model.custom_field }}
|
What I got from your answer is there is no way to access data in 
django template of model which is inheriting Displayable as it is not 
in context. Only way to get that data is to use custom urls, views 
and templates. It's like just getting some basics but implement 
almost everything to get data from db (on url parameters or 
something). Then pass it as context to template response along with 
django template just like Blog.


Actually Our old app uses mezzenine but inherits everything from 
*Page*. And using that we can easily access data using page in 
context in django template. But that does seems wrong to create 
everything as page. But what I understood that If I were to fix it I 
will have to write all those urls and views by myself.


If I understood something wrong please help. Also I do have another 
question so if I have model inheriting *Displayable* and now I need 
info from that model in pages other that specific pages provided by 
custom urls and views. how would I do it. For *Example* I need 3 
recent blog posts on home page. So how would I access them. Would I 
have to write custom View for Home page and if so then I'm just 
overriding Home page default view as it is *RichTextPage* at this point.


If anything seems confusing I would be happy to provide further 
information.


Help is highly appreciated.

--
You received this message because you are subscribed to the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, 
send an email to mezzanine-users+unsubscr...@googlegroups.com 
<mailto:mezzanine-users+unsubscr...@googlegroups.com>.

For more options, visit https://groups.google.com/d/optout.




--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] How to use mezzanine.forms?

2017-10-11 Thread Eduardo Rivas

Hello Rainell.

mezzanine.forms is not a like django.forms. mezzanine.forms is meant for 
admin users to create forms from the admin. It is basically a "form 
builder" for your end users.


To use it make sure it is in you INSTALLED_APPS and in the admin create 
a new page of type "Form". When editing that page you'll see the inlines 
that allow users to create their custom forms.



On 2017-10-11 10:10 AM, Rainell Dilou GĂłmez wrote:

Hello everyone,
in the project that I am doing I will start working with forms. I know 
what I can and should do if I work with django.forms, and I suppose 
mezzanine.forms can help me even more, but how? In the Mezzanine 
documentation there are no explanations and examples on how to use 
mezzanine.forms.
Can anyone tell me where to find explanations and examples about using 
mezzanine.forms?

--
You received this message because you are subscribed to the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to mezzanine-users+unsubscr...@googlegroups.com 
.

For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Trying to make a section of my site that's like Blog Posts

2017-10-11 Thread Eduardo Rivas

Hi Tom.

You need to register your model in the admin. You can use 
mezzanine.blog.admin as an example: 
https://github.com/stephenmcd/mezzanine/blob/master/mezzanine/blog/admin.py.


This admin configuration is a bit complex, so I recommend you become 
familiar with Django's admin in general before diving into it. Have you 
completed the official Django tutorial? It should introduce you to all 
these concepts: https://docs.djangoproject.com/en/1.11/intro/tutorial01/



On 2017-10-11 7:02 PM, Tom Tanner wrote:


Hey all,

When I go to the Admin section of my site, I see the "Blog posts" 
under "Content" on the left. I want to make a new "Content" section 
called "Projects." It would be similar to a page of blog posts. But 
I'm not sure how to start doing this.


Here's what my app's `models.py` looks like.

|
from__future__ importunicode_literals


fromdjango.db importmodels
fromdjango.core.urlresolvers importreverse
fromdjango.utils.translation importugettext_lazy as_


frommezzanine.conf importsettings
frommezzanine.core.fields importFileField
frommezzanine.core.models importDisplayable,Ownable,RichText,Slugged
frommezzanine.generic.fields importCommentsField,RatingField
frommezzanine.utils.models importAdminThumbMixin,upload_to


# Create your models here.


classProjectsPage(Displayable):
'''
 A page representing the format of the page that
 has links to standalone, project projects
 '''


 categories =models.ManyToManyField("ProjectCategory",
 verbose_name=_("Categories"),
 blank=True,related_name="projectposts")
 allow_comments =models.BooleanField(verbose_name=_("Allow comments"),
default=True)
 comments =CommentsField(verbose_name=_("Comments"))
 featured_image =FileField(verbose_name=_("Featured Image"),
 upload_to=upload_to("project.ProjectPost.featured_image","project"),
 format="Image",max_length=255,null=True,blank=True)
 related_posts =models.ManyToManyField("self",
 verbose_name=_("Related posts"),blank=True)
 admin_thumb_field ="featured_image"


classMeta:
   verbose_name=_("Project link")
   verbose_name_plural=_("Project links")
   ordering=("-publish_date",)




classProjectCategory(Slugged):
'''
 A category for grouping project links into a series
 '''


classMeta:
   verbose_name=_("Project Category")
   verbose_name_plural=_("Project Categories")
   ordering=("title",)
|
I basically copied a section of `mezzanine/blog/models.py`.

But "Projects" won't show up in my Admin menu. What am I doing wrong?
--
You received this message because you are subscribed to the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to mezzanine-users+unsubscr...@googlegroups.com 
.

For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Trying to make a section of my site that's like Blog Posts

2017-10-11 Thread Eduardo Rivas
Also (and I know I've posted this a ton lately, but I think it's 
relevant) here's a talk describing the general steps I follow when 
building apps for Mezzanine: https://www.youtube.com/watch?v=yVAmMXES2EU


It touches on how to uses Mezzanine's models, admin, and template utilities.


On 2017-10-11 7:08 PM, Eduardo Rivas wrote:


Hi Tom.

You need to register your model in the admin. You can use 
mezzanine.blog.admin as an example: 
https://github.com/stephenmcd/mezzanine/blob/master/mezzanine/blog/admin.py.


This admin configuration is a bit complex, so I recommend you become 
familiar with Django's admin in general before diving into it. Have 
you completed the official Django tutorial? It should introduce you to 
all these concepts: 
https://docs.djangoproject.com/en/1.11/intro/tutorial01/



On 2017-10-11 7:02 PM, Tom Tanner wrote:


Hey all,

When I go to the Admin section of my site, I see the "Blog posts" 
under "Content" on the left. I want to make a new "Content" section 
called "Projects." It would be similar to a page of blog posts. But 
I'm not sure how to start doing this.


Here's what my app's `models.py` looks like.

|
from__future__ importunicode_literals


fromdjango.db importmodels
fromdjango.core.urlresolvers importreverse
fromdjango.utils.translation importugettext_lazy as_


frommezzanine.conf importsettings
frommezzanine.core.fields importFileField
frommezzanine.core.models importDisplayable,Ownable,RichText,Slugged
frommezzanine.generic.fields importCommentsField,RatingField
frommezzanine.utils.models importAdminThumbMixin,upload_to


# Create your models here.


classProjectsPage(Displayable):
'''
 A page representing the format of the page that
 has links to standalone, project projects
 '''


 categories =models.ManyToManyField("ProjectCategory",
 verbose_name=_("Categories"),
 blank=True,related_name="projectposts")
 allow_comments =models.BooleanField(verbose_name=_("Allow comments"),
default=True)
 comments =CommentsField(verbose_name=_("Comments"))
 featured_image =FileField(verbose_name=_("Featured Image"),
 upload_to=upload_to("project.ProjectPost.featured_image","project"),
 format="Image",max_length=255,null=True,blank=True)
 related_posts =models.ManyToManyField("self",
 verbose_name=_("Related posts"),blank=True)
 admin_thumb_field ="featured_image"


classMeta:
   verbose_name=_("Project link")
   verbose_name_plural=_("Project links")
   ordering=("-publish_date",)




classProjectCategory(Slugged):
'''
 A category for grouping project links into a series
 '''


classMeta:
   verbose_name=_("Project Category")
   verbose_name_plural=_("Project Categories")
   ordering=("title",)
|
I basically copied a section of `mezzanine/blog/models.py`.

But "Projects" won't show up in my Admin menu. What am I doing wrong?
--
You received this message because you are subscribed to the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, 
send an email to mezzanine-users+unsubscr...@googlegroups.com 
<mailto:mezzanine-users+unsubscr...@googlegroups.com>.

For more options, visit https://groups.google.com/d/optout.




--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Send a message to admin from the save method in a Displayable model

2017-10-13 Thread Eduardo Rivas
I would recommend you move this logic to the admin view, where the 
request is going to be available at all times. Specifically, you should 
register your own admin class and override the save_model() method, as 
described here: 
https://docs.djangoproject.com/en/1.11/ref/contrib/admin/#django.contrib.admin.ModelAdmin.save_model. 
Don't forget to call super() to actually save the model instance before 
your custom logic!


Also, keep in mind ModelAdmin provides message_user() as a convenience 
to display messages in the admin. 
https://docs.djangoproject.com/en/1.11/ref/contrib/admin/#django.contrib.admin.ModelAdmin.message_user


On 2017-10-13 2:36 PM, Rainell Dilou GĂłmez wrote:

Hello everyone,
I need send a message to admin from the /save/ /method/ in a /model/, 
something like that:


|
classMyModel(Displayable,Ownable,RichText):

# some field

defsave(self,*args,**kwargs):

# do something

# set the message to be displayed

super(MyModel,self).save(*args,**kwargs)
|

Then, in the admin, the message should be displayed when the form is 
sent (save).


I have done a test after having read documentation, questions on 
stackoverflow.com, etc. The test doesn't generate errors during the 
execution but I don't get the result I want, the default Mezzanine 
message is still displayed, my custom message isn't displayed.

The code of my test would look like that:

|
fromdjango.db importmodels
fromdjango.utils.translation importugettext_lazy as_
frommezzanine.core.models importDisplayable,Ownable,RichText

fromdjango.contrib importmessages
fromdjango.test importRequestFactory
fromdjango.contrib.messages.storage.fallback importFallbackStorage

defcreate_request(url):
    factory =RequestFactory()
    request =factory.get(url)
    setattr(request,'session','session')
    messages =FallbackStorage(request)
    setattr(request,'_messages',messages)
returnrequest

classMyModel(Displayable,Ownable,RichText):

# some field

defsave(self,*args,**kwargs):

# do something

        url ="/admin/path_to/the_instance/%s/change/"%self.id
        request =create_request(url)
        messages.error(request,_("My custom message."))
|

As I said earlier, this does not generate errors, but the message is 
not displayed.

Please, how can I do it?
--
You received this message because you are subscribed to the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to mezzanine-users+unsubscr...@googlegroups.com 
.

For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Re: Send a message to admin from the save method in a Displayable model

2017-10-14 Thread Eduardo Rivas
If that's the case you may want to override response_change() instead. 
This method is quite complex and determines which message to display 
depending on what action the user just triggered (save, save and 
continue, save and add new, etc). 
https://docs.djangoproject.com/en/1.11/_modules/django/contrib/admin/options/#ModelAdmin.response_change



On 2017-10-14 8:30 AM, Rainell Dilou GĂłmez wrote:

I have changed


|returnDisplayableAdmin.message_user(request,_("My custome 
message."),messages.WARNING|


by

|
||returnself.message_user(request,_("My custome 
message."),messages.WARNING)||

|

My custom message (WARNING) is now displayed, but also the predefined 
Mezzanine message (SUCCESS), both are displayed, as shown in the 
following image






Il giorno venerdĂŹ 13 ottobre 2017 22:36:13 UTC+2, Rainell Dilou GĂłmez 
ha scritto:


Hello everyone,
I need send a message to admin from the /save/ /method/ in a
/model/, something like that:

|
classMyModel(Displayable,Ownable,RichText):

# some field

defsave(self,*args,**kwargs):

# do something

# set the message to be displayed

super(MyModel,self).save(*args,**kwargs)
|

Then, in the admin, the message should be displayed when the form
is sent (save).

I have done a test after having read documentation, questions on
stackoverflow.com , etc. The test
doesn't generate errors during the execution but I don't get the
result I want, the default Mezzanine message is still displayed,
my custom message isn't displayed.
The code of my test would look like that:

|
fromdjango.db importmodels
fromdjango.utils.translation importugettext_lazy as_
frommezzanine.core.models importDisplayable,Ownable,RichText

fromdjango.contrib importmessages
fromdjango.test importRequestFactory
fromdjango.contrib.messages.storage.fallback importFallbackStorage

defcreate_request(url):
    factory =RequestFactory()
    request =factory.get(url)
    setattr(request,'session','session')
    messages =FallbackStorage(request)
    setattr(request,'_messages',messages)
returnrequest

classMyModel(Displayable,Ownable,RichText):

# some field

defsave(self,*args,**kwargs):

# do something

        url ="/admin/path_to/the_instance/%s/change/"%self.id
        request =create_request(url)
        messages.error(request,_("My custom message."))
|

As I said earlier, this does not generate errors, but the message
is not displayed.
Please, how can I do it?

--
You received this message because you are subscribed to the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to mezzanine-users+unsubscr...@googlegroups.com 
.

For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Trying to make a section of my site that's like Blog Posts

2017-10-14 Thread Eduardo Rivas
Well, at this point it is up to you to determine the absolute url of 
each object. Since we don't know what fields your model has, and what 
views are supposed to serve it, we can't say for sure what the url 
should be.


In general, all objects inheriting from Displayable will have a slug 
field, which is ideal for generating urls. In that case, 
get_absolute_url() can return reverse("your_url_name", kwargs={"slug": 
self.slug}).


Of course, for this to work you'll need to create the view that serves 
the object and register it under a named urlpattern.



On 2017-10-13 5:18 PM, Tom Tanner wrote:
OK, I've gotten more done after watching your video and going over the 
Django tutorials covering `admin.py`. My `admin.py` looks like this 
now. I renamed the classes...:


|
from __future__ import unicode_literals

from copy import deepcopy

from django.contrib import admin
from django.utils.translation import ugettext_lazy as _

from .models import ProjectLinkPage, ProjectCategory

# Register your models here.

admin.site.register(ProjectLinkPage)
admin.site.register(ProjectCategory)
|

So now "Project links" appears in the admin page lefthand side. When I 
add a new project link, then try to view it on site, I get an error 
saying:

|
NotImplementedError: The model ProjectLinkPage does not have 
get_absolute_url defined


|

I will add a `get_absolute_url()` method to my `ProjectLinkPage` 
class. But here's the thing. I want this Projects Page to have links 
to different, customized pages. One of the links on the Projects Page 
could go to an HTML file that has an interactive map on it. Looking at 
`get_absolute_url()` in Mezzanine's BlogPost class, I'm unsure how I'd 
edit ProjectLinksPage's `get_absolute_url()` to do what I want. Any 
tips? Examples of other custom-made `get_absolute_url()` methods? Or 
maybe I'm looking at this all wrong?



On Wednesday, October 11, 2017 at 9:15:13 PM UTC-4, Eduardo Rivas wrote:

Also (and I know I've posted this a ton lately, but I think it's
relevant) here's a talk describing the general steps I follow when
building apps for Mezzanine:
https://www.youtube.com/watch?v=yVAmMXES2EU
<https://www.youtube.com/watch?v=yVAmMXES2EU>

It touches on how to uses Mezzanine's models, admin, and template
utilities.


On 2017-10-11 7:08 PM, Eduardo Rivas wrote:


Hi Tom.

You need to register your model in the admin. You can use
mezzanine.blog.admin as an example:
https://github.com/stephenmcd/mezzanine/blob/master/mezzanine/blog/admin.py

<https://github.com/stephenmcd/mezzanine/blob/master/mezzanine/blog/admin.py>.

This admin configuration is a bit complex, so I recommend you
become familiar with Django's admin in general before diving into
it. Have you completed the official Django tutorial? It should
introduce you to all these concepts:
https://docs.djangoproject.com/en/1.11/intro/tutorial01/
<https://docs.djangoproject.com/en/1.11/intro/tutorial01/>


On 2017-10-11 7:02 PM, Tom Tanner wrote:


Hey all,

When I go to the Admin section of my site, I see the "Blog
posts" under "Content" on the left. I want to make a new
"Content" section called "Projects." It would be similar to a
page of blog posts. But I'm not sure how to start doing this.

Here's what my app's `models.py` looks like.

|
from__future__ importunicode_literals


fromdjango.db importmodels
fromdjango.core.urlresolvers importreverse
fromdjango.utils.translation importugettext_lazy as_


frommezzanine.conf importsettings
frommezzanine.core.fields importFileField
frommezzanine.core.models importDisplayable,Ownable,RichText,Slugged
frommezzanine.generic.fields importCommentsField,RatingField
frommezzanine.utils.models importAdminThumbMixin,upload_to


# Create your models here.


classProjectsPage(Displayable):
'''
 A page representing the format of the page that
 has links to standalone, project projects
 '''


 categories =models.ManyToManyField("ProjectCategory",
 verbose_name=_("Categories"),
 blank=True,related_name="projectposts")
 allow_comments =models.BooleanField(verbose_name=_("Allow
comments"),
default=True)
 comments =CommentsField(verbose_name=_("Comments"))
 featured_image =FileField(verbose_name=_("Featured Image"),
 upload_to=upload_to("project.ProjectPost.featured_image","project"),
 format="Image",max_length=255,null=True,blank=True)
 related_posts =models.ManyToManyField("self",
 verbose_name=_("Related posts"),blank=True)
 admin_thumb_field =&quo

Re: [mezzanine-users] delete_model method doesn't exist in the PageAdmin class. How do something when delete page?

2017-10-19 Thread Eduardo Rivas
When overriding methods you should call super(), not the methods 
directly on parent classes. super() will resolve the method order 
correctly, and in this case it'll call delete_model() all the way back 
in ModelAdmin, which is the base class of PageAdmin.


Here's an example on how to call super() on save_model() 
https://docs.djangoproject.com/en/1.11/ref/contrib/admin/#django.contrib.admin.ModelAdmin.save_model



On 2017-10-19 1:29 PM, Rainell Dilou GĂłmez wrote:

Hello everyone
I tried to override "RichTextPageAdmin" to use the /save_model/ and 
/delete_model/ methods when creates or deleted RichText type pages. 
The code would be something like this


|
classRichTextPageAdmin(PageAdmin):

defdelete_model(self,request,obj):
# do something
returnPageAdmin.delete_model(self,request,obj)

defsave_model(self,request,obj,form,change):
# do something
returnPageAdmin.save_model(self,request,obj,form,change)

ifRichTextPageinadmin.site._registry:
    admin.site.unregister(RichTextPage)
admin.site.register(RichTextPage,RichTextPageAdmin)
|

So, when I saw that the test worked only with the save_model method, I 
noticed that the delete_model method does not exist in the PageAdmin 
class.
So I'm wondering, how can I execute a code when a RichText type page 
is deleted?

--
You received this message because you are subscribed to the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to mezzanine-users+unsubscr...@googlegroups.com 
.

For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Thumbnail generation failing silently

2017-11-03 Thread Eduardo Rivas

Hello Iain.

This is an issue that has been fixed on the master branch: 
https://github.com/stephenmcd/mezzanine/issues/1781



On 2017-11-03 11:18 AM, Iain Mac Donald wrote:

On Fri, 3 Nov 2017 15:42:49 +
Iain Mac Donald  wrote:


Both the dev and production machines have previous installs of
Mezzanine which create thumbnails just fine (installed a few months
back).

Hmmm, I went back to the version of Pillow used in these previous
installs (version 3.0.0) and everything just worked. No other system
changes. I haven't tried any other versions of Pillow between 3.0.0 and
4.3.0.

If no one else has experienced this problem it might be an oddity on my
machines. Although both are running a pretty standard Debian Stretch
install.



--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Do I redirect to home page using `home_slug`?

2017-11-22 Thread Eduardo Rivas
Can you show us what function is raising the exception? Is it home_slug, 
or redirect? What happens if you use: return redirect("/") ?



On 2017-11-22 7:59 PM, Tom Tanner wrote:

In one of my views, I have this:

|
frommezzanine.utils.urls importhome_slug

defmyView(request):
# Some code...
returnredirect(home_slug())
|

This gives me the error: `TypeError: 'str' object is not callable`. Am 
I supposed to use `home_slug()` to redirect to home page in this case? 
If not, how else do I redirect to the home page? I have not 
touched/edited the urlpattern for the default home page in `urls.py`.

--
You received this message because you are subscribed to the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to mezzanine-users+unsubscr...@googlegroups.com 
.

For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Do I redirect to home page using `home_slug`?

2017-11-23 Thread Eduardo Rivas
Where a are you importing "redirect" from?

On Nov 23, 2017 1:21 PM, "Tom Tanner"  wrote:

> I believe it's `redirect()`. When I replace `home_slug()` with `'/'`, I
> get the same error.
>
> Full trace...
>
> Internal Server Error: /register/
> Traceback (most recent call last):
>   File "/home/myLinuxUsername/project/local/lib/python2.7/
> site-packages/django/core/handlers/exception.py", line 42, in inner
> response = get_response(request)
>   File "/home/myLinuxUsername/project/local/lib/python2.7/
> site-packages/django/core/handlers/base.py", line 249, in
> _legacy_get_response
> response = self._get_response(request)
>   File "/home/myLinuxUsername/project/local/lib/python2.7/
> site-packages/django/core/handlers/base.py", line 187, in _get_response
> response = self.process_exception_by_middleware(e, request)
>   File "/home/myLinuxUsername/project/local/lib/python2.7/
> site-packages/django/core/handlers/base.py", line 185, in _get_response
> response = wrapped_callback(request, *callback_args, **callback_kwargs
> )
>   File "/home/myLinuxUsername/project/product_blog/theme/views.py", line
> 48, in register
> return redirect('/')
> TypeError: 'str' object is not callable
>
>
>
> On Wednesday, November 22, 2017 at 11:50:04 PM UTC-5, Eduardo Rivas wrote:
>>
>> Can you show us what function is raising the exception? Is it home_slug,
>> or redirect? What happens if you use: return redirect("/") ?
>>
>> On 2017-11-22 7:59 PM, Tom Tanner wrote:
>>
>> In one of my views, I have this:
>>
>> from mezzanine.utils.urls import home_slug
>>
>> def myView(request):
>>   # Some code...
>>   return redirect(home_slug())
>>
>>
>> This gives me the error: `TypeError: 'str' object is not callable`. Am I
>> supposed to use `home_slug()` to redirect to home page in this case? If
>> not, how else do I redirect to the home page? I have not touched/edited the
>> urlpattern for the default home page in `urls.py`.
>> --
>> You received this message because you are subscribed to the Google Groups
>> "Mezzanine Users" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to mezzanine-use...@googlegroups.com.
>> For more options, visit https://groups.google.com/d/optout.
>>
>>
>> --
> You received this message because you are subscribed to the Google Groups
> "Mezzanine Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to mezzanine-users+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Where can I view my Mezzanine project's data tables?

2018-01-02 Thread Eduardo Rivas
Hi Tom.

If you configured postgres as your database backend, you can use pgAdmin or
any other viewer to access your tables.

If you started a Mezzanine project and didn't change the database
configuration, you're probably using a sqlite database. This is just a
regular file in your project folder, should be named dev.db. I don't know
of any tools to view those, but I recommend you search online for "sqlite
viewer" or something of that sort.

On Jan 2, 2018 5:44 PM, "Tom Tanner"  wrote:

When I made my Mezzanine project, I used `python manage.py createdb
--noinput` when making the database. How do I view the database and its
tables from a GUI? For instance, pgAdmin, if the database was made in
PostgreSQL?

-- 
You received this message because you are subscribed to the Google Groups
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Question regarding fab deploy using rsync and file deletion

2018-01-12 Thread Eduardo Rivas

Hi Pat.

I'm the person who implemented rsync deployments and didn't even know it 
has a delete option! Please go ahead and submit a PR, it sounds like a 
genuine improvement.



On 2018-01-11 10:59 AM, Pat James wrote:
I deleted a template file, did a fab deploy via rsync, and found that 
the deletion did not propagate.


I manually deleted the file in production and all was well, but I try 
to minimize the need to manually manipulate my production environments.


I see that Fabric's rsync_project() function has an option to add the 
--delete flag for rsync, but that is not present in the standard 
Mezzanine fabfile.py


Is this something that is by design, and I should just modify the 
fabfile to suit my needs here, or is this an oversight/bug worthy of a 
minor pull request?


-Pat
--
You received this message because you are subscribed to the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to mezzanine-users+unsubscr...@googlegroups.com 
.

For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Database not populated using Fabric deploy

2018-01-18 Thread Eduardo Rivas

Hello!

The fabfile assumes your test database contains data not suitable for 
production. You will need to manually dump and restore your DB in the 
production server if you want to transfer your development data. My 
suggestion is you create your own Fabric task to automate the process if 
this is something you'll need to do often.


As for the migrations, they are automatically run on first deploy, so 
unless you've created new migrations, nothing will be applied when 
running "migrate". What you have in production is a database with all 
tables and columns created but no rows.


Hope that helps :)


On 2018-01-18 5:40 PM, rwr.r...@gmail.com wrote:

Hi all

I'm brand new to Mezzanine, but not to Django.

I created a test mezzanine project and it runs perfectly on loclhost. 
It's a default project with the provided sample data, no mods at all.


I deployed the project to a fresh Linode Debian Stretch server using 
'fab secure' and then 'fab all'. Everything seemed to work perfectly, 
I can hit the site and see the Mezzanine homepage no problem. But it 
doesn't seem to have populated the database on the server at all. I'm 
using postgres and can see, using psql, that the project database was 
created. I also can't login into the admin page of the site. Again, I 
believe this is simply because database wasn't populated. All of the 
project log files on the server are empty.


I also ran 'fab deploy' and it seemed to work but tells me there were 
no migrations to apply. I also ran 'python manage.py migrate', which 
also reported no migrations to apply.


What information can I provide to help understand what's going on 
here. Or, is there just something, some step maybe, that I missed?


Thanks in advance for ny help.
--
You received this message because you are subscribed to the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to mezzanine-users+unsubscr...@googlegroups.com 
.

For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Providers

2018-02-15 Thread Eduardo Rivas

Hello Fabio.

Pretty much any VPS provider is suitable to deploy Mezzanine sites with 
the default fabfile. This includes Digital Ocean, Linode, Vultr, etc. 
Here's the official tutorial: http://mezzanine.jupo.org/docs/deployment.html


Other than that you can deploy Mezzanine anywhere that will let you spin 
up a wsgi server, filesystem, and a database (so AWS and Azure are also 
options). You'll need to figure out the deployment process yourself, though.


The latest commit to Mezzanine was done 4 days ago: 
https://github.com/stephenmcd/mezzanine/



On 2018-02-15 6:22 PM, Fabio wrote:

I would like to test Mezzanine on a hosting but I can't find providers who 
supports Django.

Which providers you suggest me to use for test Mezzanine ?

When Mezzanine has been updated last time ?



--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Modifying behavior of TimeStamped `updated` timestamp for subclasses

2018-04-13 Thread Eduardo Rivas
Haven't tried this but I think it should work. It is an extra DB table 
but doesn't require monkey patching anything and it can leave in its own 
app:


Create a new model called LastUpdate or TimeStamp, with a datetime field 
and a generic relation 
 
to any model. Then use signals attached to the models you're interested 
in to update_or_create LastUpdate instances when a model is saved 
according to your criteria.


Now you should have a reverse relation in BlogPost (and any model you 
want) to get the LastUpdate instance. If that doesn't work you should 
still be able to filter LastUpdate instances by ContenType and PK.



On 2018-04-13 10:33 AM, Chris Hawes wrote:
I want to display a timestamp on each BlogPost showing when the post 
was last updated. My first attempt at this was to just show the 
`updated` timestamp from the TimeStamped superclass. However, this 
timestamp is bumped up every time the post is saved for any reason. 
For instance if a user adds a comment, BlogPost gets saved in order to 
update its comment_count field, and `updated` gets bumped as a result. 
That's no good.


I also have two other RichText-TimeStamped classes that require 
similar functionality. Since I own those classes, the obvious thing 
would be to make an abstract superclass that adds a new modified 
timestamp field and updates it appropriately on save.


But what do I do about BlogPost? I don't own it so my options are 
limited, and I am struggling to come up with a nice way to handle it.


  * I could add a field through EXTRA_MODEL_FIELDS and monkey patch
BlogPost.save() to update it. But I would prefer to use the same
logic for the other two classes as for BlogPost.
  * I could monkey patch TimeStamped.save(), but would have to put a
super ugly hack so that it only affects the 3 subclasses that I
care about.
  * Subclassing BlogPost might be an option, but it would create a new
table, which is not fun, plus I already have a bunch of existing
blog posts so I'm not sure offhand what I'd do about those.

I am wondering if anyone has a better idea? Is there a nice way to 
handle cases like this that I am missing?

--
You received this message because you are subscribed to the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to mezzanine-users+unsubscr...@googlegroups.com 
.

For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Re: What's wrong in my local_settings / how to do basic deploy to aws

2018-04-23 Thread Eduardo Rivas

Hi Wolfgang.

Production and development databases are kept separate, as well as media 
uploads. If you'd like to upload your database and media files from dev 
to prod you can add custom fabric tasks that do so.



On 2018-04-23 1:13 PM, Wolfgang M wrote:


You were perfectly right Christian. I needed the ssh_user:ubuntu and 
ssh_key_path settings in my fabric local_settings. Also Amazon Linux 
is RHEL based and uses yum not apt-get.



Those changes allowed me to run fab all.


I have some more questions about content deployment since after my 
deploy I thought it hadn't worked as my local edits weren't deployed. 
I'll try and sort that out on a relevant thread.


On Friday, April 20, 2018 at 2:34:53 AM UTC-5, Christian Hoffmann wrote:

Perhaps better try Ubuntu 16.04 AMI for your first deployment. --
Christian

--
You received this message because you are subscribed to the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to mezzanine-users+unsubscr...@googlegroups.com 
.

For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Guidance on content workflow / new server SSL+admin setup

2018-04-25 Thread Eduardo Rivas

Hi Wolfgang.

On the first point, you mention the homepage is not editable from the 
admin, so that means dumping the database locally and transferring would 
make no difference. If the homepage is a static template, then you 
should edit the source file and deploy to the server to apply the 
changes. If you change your homepage to be admin-editable, then you can 
log into the admin on production and perform your changes as usual.


Regarding your second point, I recommend you implement SSL certificate 
at the server level, not the application. In other words, have Nginx or 
Apache redirect all traffic to HTTPS and have Mezzanine (via gunicorn) 
listening only on secure connections. You've mentioned certbot, which is 
provided by Let's Encrypt. I use it extensively (though not on AWS) and 
it is a perfectly adequate solution. If you've had to configure an 
exception in your browser it means you're still using a self-signed 
certificate, not the one provided by Let's Encrypt.



On 2018-04-23 8:50 PM, Wolfgang M wrote:

I have a few questions about the content strategy and some technicals.

---

How do you edit your website, for instance the homepage where you 
would like to change a misspelling and can't edit it from admin. I 
understand there are two options:
1. Perform editing on the production server, perhaps in your 
installed_apps theme
2. Edit locally and then dump database and transfer to production 
server, perhaps automated in fab file


Now I've read that option 1 isn't preferred because you shouldn't do 
work in your production server, but I've also read that option 2 would 
mean having to lose your production database so should only be done 
once at the beginning.


Once I have an admin login and insert a theme on the production 
server, I can conceivably do all my content editing there or in 
browser via admin. However to go back to the recommendations I've 
seen, I'll be the only content creator for this first mezzanine app, 
therefore doing all my editing and testing locally and exporting my 
database shouldn't cause any conflicts. Therefore I'm looking at Rick 
Reynold's post here 
 
as guidance for option 2.


---

I recently set up my AWS server and was unsure whether it had deployed 
correctly due to the following. I specified an email and password for 
my admin user, but it won't login. Perhaps account authentication is 
inaccessible.


Does the admin page require a secure https connection? (I've added the 
SECURE_PROXY_SSL_HEADER line to my settings as shown in this post 
, 
and I've cut my domains list to just one as described here.) 

Now I can https but it is still not secure, and I have to add an 
exception to access my site. I found this resource for having certbot 
handle my 
nginx setup, but as with most of my concerns, I'm hesitant to reinvent 
the wheel just because I don't understand the one right in front of 
me. Does someone know what else I would need to do with the standard 
deployment to finish setting up admin/ssl?








--
You received this message because you are subscribed to the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send 
an email to mezzanine-users+unsubscr...@googlegroups.com 
.

For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Mezzanine 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] Re: Unable to deploy Mezzanine on Digital ocean.

2018-05-27 Thread Eduardo Rivas

Hello there đŸ‘‹đŸ»

I'm very sorry about all the trouble you've had with the deployment 
process. I know the feeling of spending days on a bug without progress. 
I hope you are able to deploy your site eventually.


I think the main cause of all trouble is the release of Fabric 2 just 18 
days ago (https://github.com/fabric/fabric/releases/tag/2.0.0). I'm not 
aware of the specifics related to this release, but a major version 
change might indicate that many things will break if not updated. The 
fabfile included with Mezzanine was written for Fabric 1 and Python 2. 
Mezzanine itself has been compatible with Python 3 for many years now, 
but the default deployment process assumes Python 2.


Besides that, I don't think deploying with rsync will work on Windows 
since no such command exists in Windows (though I'm unaware if a port 
exists and if you've installed it). I also develop on Windows and deploy 
with git without issue.


My advice to get this sorted would be:

- Destroy and rebuild your Droplet in DO.

- Do not create a new user on the droplet, you only need the root user 
for the deployment process. A non-root user will be created for you if 
you follow the deployment tutorial. In fact you only need to SSH into 
your Droplet once to change the root password. You don't need to install 
system nor Python dependencies.


- Create a new git repository in your development machine and commit all 
relevant files to it. In local_settings.py change the deployment method 
to git.


- Install Fabric 1 with: pip install -U "fabric<2" (quotes are important 
when specifying versions to pip)


- Assuming you installed Mezzanine from pip, you may not have the latest 
version of the fabfile on your system. Go to 
https://github.com/stephenmcd/mezzanine/blob/master/mezzanine/project_template/fabfile.py 
and replace your local fabfile with that.


- Follow the Deployment tutorial (Case 1). 
http://mezzanine.jupo.org/docs/deployment.html#case-1-deploying-to-a-brand-new-server


If you encounter any other issues, I'd be happy to help troubleshoot 
further. Please include your Mezzanine, Django, Fabric, and Python 
versions, as well as full tracebacks of the errors you're seeing, and 
the details of your droplet.


Finally, I would like to remind you Mezzanine is built and maintained by 
a community of volunteers. If the software is making you upset and you 
come here looking for help, the least you can do is assume the 
volunteers who wrote Mezzanine and who are going to help you out have 
good intentions. We are not wasting your time, we are not responsible 
for the changes in the tools we depend on (like Fabric), we have zero 
obligation to help you develop and deploy a website (yet, we will gladly 
do it as we've done many times in the past for others). If you've found 
a bug in the code or an error in the docs, report it without parading 
how broken or outdated things are. Thanks! :)



On 2018-05-27 9:10 AM, Data Intelligence wrote:

Hey Eduardo,
I am aware your comment was years ago, but I suggest editing it 
because the instructions given on the mezzanine site DO NOT work, so I 
suggest either updating them or taking them off all together as to 
keep others from wasting time.

What I mean by DO NOT WORK is this:
1- Mezzanine is not compatible with python 3
2- The dependencies it supposedly automatically installs ARE NOT 
compatible with each other meaning:
3- Fabric that is installed is not compatible with the fabfile.py that 
is generated.
4- When you get done with all that and the days it takes to figure 
that out and you get to run

5- NOT SO FAB ALL you end up with:
6- "[localhost] local: rsync  --exclude "*.pyc" --exclude "*.pyo" 
--exclude "*.db" --exclude ".DS_Store" --exclude ".coverage" --exclude 
"local_settings.py" --exclude "/static" --exclude "/.git" --exclude 
"/.hg" -pthrvz  --rsh='ssh  -p 22 ' C:\Users\~\blog_iq\ 
u...@xxx.xx.xxx.xx:/home/user/mezzanine/blog_iq

The source and destination cannot both be remote.
rsync error: syntax or usage error (code 1) at main.c(1292) 
[Receiver=3.1.2]


7- So after weeks of trying I no longer have the patience for outdated 
instructions- SO please either update your instructions or ADD a note 
at the beginning listing the exact version of the dependencies and 
even better yet the PYTHON VERSION to begin with.


Don't you agree???

On Monday, March 28, 2016 at 1:54:48 PM UTC-7, Eduardo Rivas wrote:

Thanks Adam. I see you went with Digital Ocean's tutorials. Did
you try
the one in Mezzanine's docs? It should work with a completely blank
Ubuntu VPS.

http://mezzanine.jupo.org/docs/deployment.html#tutorial
<http://mezzanine.jupo.org/docs/deployment.html#tutorial>

The fabfile should handle not only installing the Mezzanine
project, but
   

RE: [mezzanine-users] Implementing multiple blogs

2018-08-08 Thread Eduardo Rivas
You can add custom entries on the nav menu by adding pages of type “Link”. In 
the URL field enter the category slug, something like 
/blog/category/example-category/ (you can get the slug by manually browsing to 
the category and copying the URL).

From: Mr X
Sent: Wednesday, August 8, 2018 1:05 PM
To: Mezzanine Users
Subject: Re: [mezzanine-users] Implementing multiple blogs

Is it possible to register each category in the navbar?

On Friday, April 20, 2012 at 5:33:03 PM UTC+4:30, Stephen McDonald wrote:
I'd suggest using the blog categories to implement this.
On Fri, Apr 20, 2012 at 4:57 PM, Plaban Nayak  wrote:
Hi,

I was trying to figure out how can  I have two separate instances of
blog hosted at two separate urls in the same domain.

Say for example a company blog and a tech blog.


Any help ?




-- 
Stephen McDonald
http://jupo.org
-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


RE: [mezzanine-users] Recommendations for Bootstrap WYSIWYG editor?

2018-08-08 Thread Eduardo Rivas
I have achieved something similar using TinyMCE (the builtin editor). What I do 
is have the site CSS applied to editor. So if site editors want to build a grid 
with Bootstrap classes, they have to edit the markup, but can at least see how 
text and other images will appear in the grid.

To do this, you need to tell TinyMCE to load Bootstrap’s CSS files:
1. Create your own version of tinymce_setup.js. Put it in static/mezzanine/js 
in one of your apps and copy the contents from here: 
https://github.com/stephenmcd/mezzanine/blob/master/mezzanine/core/static/mezzanine/js/tinymce_setup.js
2. Change the content_css option into an array (line 82). We want to include 
the base CSS and then add our own entries to the array. Something like: 
content_css: [window.__tinymce_css, ‘/path/to/bootstrap.css’]
3. Now TinyMCE should have Bootstrap styles applied. Clear your cache if you 
don’t see the changes applied.

Hope that helps!

From: Thomas Smith
Sent: Wednesday, August 8, 2018 2:25 PM
To: Mezzanine Users
Subject: [mezzanine-users] Recommendations for Bootstrap WYSIWYG editor?

I do a lot of work with Bootstrap. I recently began learning Mezzanine and it's 
working great.

However, I'm finding that in order to maintain the responsiveness of the sites 
I manage, I'm having to create custom page types and models in order to allow 
content managers to edit various responsive elements without messing up the 
responsiveness.

Maybe there's a better way to handle this (I am new to Mezzanine), but it seems 
logical to me that using a Bootstrap-aware editor would allow editing an entire 
responsive page without the need for new page types or models.

Can anyone offer suggestions for addressing this problem please?
-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


RE: [mezzanine-users] Re: Multiple Blogs

2018-08-10 Thread Eduardo Rivas
Sorry, don’t have enough time to write a code sample right now, but here is a 
more detailed description of the steps:

- Create a new application with all the contents copied from mezzanine.blog. 
Let’s call it multiblog. Add it to installed apps.
- In models.py add a new Blog model inheriting from Slugged (this will give it 
a title and slug). Register it in the admin so you can add Blog instances.
- Add foreign keys to this new Blog model to BlogPost and BlogCategory, so each 
post and category will belong to one blog. Create the required migrations. Make 
sure you expose the FK field in the admin so each post and category can choose 
to which Blog they will belong to.
- Rewrite urls.py to account for the Blog slug. For example: “/blog/some-post” 
becomes “/blog/blog-slug/some-post”. The regex for the URL should capture the 
blog slug so it will be passed to the view.
- Rewrite views.py to account for the new blog slug, and modify the querysets 
to only look into the posts / categories for a particular blog. Something like 
BlogPost.objects.filter(blog__slug=).
- Optionally rewrite the template-finding logic in the view to allow you to use 
different (per-blog) templates. For example, you could have the view load 
templates by looking inside folders that match the blog slug, like 
“templates/blog//blog_post_detail.html” and 
“templates/blog//blog_post_list.html”.

Hope that helps!

From: Amir
Sent: Thursday, August 9, 2018 7:48 AM
To: Mezzanine Users
Subject: [mezzanine-users] Re: Multiple Blogs

This suggestion of yours is remarkable Eduardo and I am craving to have 
multiple and separated blogs. I am a bit new to Django though, Could you 
elaborate more on the details please? I could open a topic on StackOverflow if 
you would prefer. This would be a huge help bro. 

On Tuesday, March 3, 2015 at 6:33:33 AM UTC+3:30, Eduardo Rivas wrote:
Hello Dennis. I actually needed to do this for a project a few years ago. As 
far a I know, Mezzanine doesn't support multiple blogs out of the box. What I 
did was create a "Blog" model, which simply had a slug and title, and then add 
it as FK to the standard BlogPost and BlogCategory models. After that, it's 
just a matter of updating urls and views to account for a blog_slug parameter 
to get the correct Blog instance. If you want to get fancy, you can create 
"base" templates for each blog. That way, you get unique blog posts, categories 
and templates for each blog. You'll also need to modify the queries made by the 
Admin to only return the subset of BlogPost's that match a Blog instance in 
particular.

Important note: this of course implies you're "forking" Mezzanine's blog app, 
so you will have to maintain it by yourself and install it in place of the 
default one.
-- 
You received this message because you are subscribed to a topic in the Google 
Groups "Mezzanine Users" group.
To unsubscribe from this topic, visit 
https://groups.google.com/d/topic/mezzanine-users/LFhT0oryfEI/unsubscribe.
To unsubscribe from this group and all its topics, send an email to 
mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


RE: [mezzanine-users] New way to use custome templates

2018-08-15 Thread Eduardo Rivas
Hi Amir.

What do you find difficult about the process? Converting regular HTML to Django 
templates? Loading static files? Something Mezzanine-specific?

From: Amir
Sent: Wednesday, August 15, 2018 8:07 AM
To: Mezzanine Users
Subject: [mezzanine-users] New way to use custome templates

I recently downloaded a blog theme from 
https://colorlib.com/wp/free-blogger-templates/. I finally managed to customize 
and use it. But I am bleeding now. 
Seriously, is there no better way to easily change the template :|

I followed http://bitofpixels.com/blog/ instructions. Any Ideas? Any ongoing 
projects to facilitate this torturous process?
-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


RE: [mezzanine-users] New way to use custome templates

2018-08-15 Thread Eduardo Rivas
Well, somebody has to do the work of converting the templates from HTML. Even 
for a WordPress theme that can be installed in one click by and end user, the 
files need to be organized and converted by a developer beforehand (which 
requires a good deal of technical knowledge). In fact, the more user friendly a 
theme or template is, the more code is required to hide the complexity behind 
an appropriate UI.

Are you familiar with https://mezzathe.me/ ? It is a marketplace with already 
converted themes which makes them much more easier to install. The theme 
selection is definitely limited, and perhaps that’s the biggest factor limiting 
Mezzanine’s growth: it doesn’t have the community and ecosystem to produce 
resource like WordPress or other CMS giants.

From: Amir
Sent: Wednesday, August 15, 2018 1:23 PM
To: Mezzanine Users
Subject: Re: [mezzanine-users] New way to use custome templates

Here are my thoughts regarding someone who is first meeting Mezzanine and wants 
to have his/her own customized template:

1. One has to be fairly skilled in the whole process of frontend and Django 
framework (so we're losing a great potential to absorb more users (I am 
aspiring to a mighty Pythonic WordPress)).
2. Even for a fairly skilled Django and frontend developer, the process of 
tuning, and matching a downloaded/purchased template can be painfully 
time-consuming. 
  To be more precise, the process of positioning template tags in the 
appropriate place in the downloaded template requires lots and lots of 
time/energy. 

I am not an authority in the field to propose a sound solution, yet as a 
serious user of Mezzanine who loves to see it grow significantly, I see this 
whole process of customizing a template a major hurdle. 

On Wednesday, August 15, 2018 at 6:46:24 PM UTC+4:30, Eduardo Rivas wrote:
Hi Amir.
 
What do you find difficult about the process? Converting regular HTML to Django 
templates? Loading static files? Something Mezzanine-specific?
 
From: Amir
Sent: Wednesday, August 15, 2018 8:07 AM
To: Mezzanine Users
Subject: [mezzanine-users] New way to use custome templates
 
I recently downloaded a blog theme from 
https://colorlib.com/wp/free-blogger-templates/. I finally managed to customize 
and use it. But I am bleeding now. 
Seriously, is there no better way to easily change the template :|
 
I followed http://bitofpixels.com/blog/ instructions. Any Ideas? Any ongoing 
projects to facilitate this torturous process?
-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-use...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
 
-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


RE: [mezzanine-users] deploying Mezzanine to a VPS

2018-08-17 Thread Eduardo Rivas
Try using Fabric version 1: pip install -U “fabric<2”

From: Kenneth L Bolton
Sent: Friday, August 17, 2018 10:42 AM
To: mezzanine-users@googlegroups.com
Subject: Re: [mezzanine-users] deploying Mezzanine to a VPS

https://groups.google.com/forum/#!searchin/mezzanine-users/fabric%7Csort:date/mezzanine-users/XZy6BGyr6Bo/zY_nEjmSBAAJ

Amir <7xm...@gmail.com> writes:

> *So I am finally done with the development, now I want to 
> deploy. *
> *I have followed the instruction 
> in http://mezzanine.jupo.org/docs/deployment.html.*
>
> *I have configured local_settings.py. Next step says issue this 
> command: 
> fab secure *
> *I did and I got: Command 'fab' not found, (I guess it must have 
> been 
> installed when I installed the mezzanine but it hasn't)*
>
> *So I installed fabric inside my project with the activated 
> virtual 
> environment using this command: pip install fabric*
>
> *after that again I entered: fab secure, which gives me this 
> error:*
>
> Traceback (most recent call last):
>>
>>   File "/home/amir/blogenv/bin/fab", line 11, in 
>>
>> sys.exit(program.run())
>>
>>   File 
>>   "/home/amir/blogenv/lib/python3.6/site-packages/invoke/program.py", 
>>> line 324, in run
>>
>> self.parse_collection()
>>
>>   File 
>>   "/home/amir/blogenv/lib/python3.6/site-packages/invoke/program.py", 
>>> line 408, in parse_collection
>>
>> self.load_collection()
>>
>>   File 
>>   "/home/amir/blogenv/lib/python3.6/site-packages/fabric/main.py", 
>>> line 73, in load_collection
>>
>> super(Fab, self).load_collection()
>>
>>   File 
>>   "/home/amir/blogenv/lib/python3.6/site-packages/invoke/program.py", 
>>> line 599, in load_collection
>>
>> module, parent = loader.load(coll_name)
>>
>>   File 
>>   "/home/amir/blogenv/lib/python3.6/site-packages/invoke/loader.py", 
>>> line 76, in load
>>
>> module = imp.load_module(name, fd, path, desc)
>>
>>   File "/home/amir/blogenv/lib/python3.6/imp.py", line 235, in 
>>   load_module
>>
>> return load_source(name, filename, file)
>>
>>   File "/home/amir/blogenv/lib/python3.6/imp.py", line 172, in 
>>   load_source
>>
>> module = _load(spec)
>>
>>   File "", line 684, in _load
>>
>>   File "", line 665, in 
>>   _load_unlocked
>>
>>   File "", line 678, in 
>>   exec_module
>>
>>   File "", line 219, in 
>>> _call_with_frames_removed
>>
>>   File "/home/amir/blogenv/problog/fabfile.py", line 16, in 
>>   
>>
>> from fabric.api import abort, env, cd, prefix, sudo as 
>> _sudo, run as 
>>> _run, \
>>
>> ModuleNotFoundError: No module named 'fabric.api'
>>
>> What am I getting wrong here? 


-- 
Ken Bolton

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [mezzanine-users] deploying Mezzanine to a VPS

2018-08-17 Thread Eduardo Rivas
Fabric is compatible with Python 2 only.

Try pip install fabric3

On Fri, Aug 17, 2018, 11:13 AM Amir <7xm...@gmail.com> wrote:

> *I did, version Fabric==1.14.0 is now installed. Now that I issue fab
> secure, I get:*
>
> Traceback (most recent call last):
>>
>>   File "/home/amir/blogenv/bin/fab", line 7, in 
>>
>> from fabric.main import main
>>
>>   File "/home/amir/blogenv/lib/python3.6/site-packages/fabric/main.py",
>>> line 13, in 
>>
>> from operator import isMappingType
>>
>> ImportError: cannot import name 'isMappingType'
>>
>>
> On Friday, August 17, 2018 at 9:26:04 PM UTC+4:30, Eduardo Rivas wrote:
>>
>> Try using Fabric version 1: pip install -U “fabric<2”
>>
>>
>>
>> *From: *Kenneth L Bolton
>> *Sent: *Friday, August 17, 2018 10:42 AM
>> *To: *mezzani...@googlegroups.com
>> *Subject: *Re: [mezzanine-users] deploying Mezzanine to a VPS
>>
>>
>>
>>
>> https://groups.google.com/forum/#!searchin/mezzanine-users/fabric%7Csort:date/mezzanine-users/XZy6BGyr6Bo/zY_nEjmSBAAJ
>>
>>
>>
>> Amir <7xm...@gmail.com> writes:
>>
>>
>>
>> > *So I am finally done with the development, now I want to
>>
>> > deploy. *
>>
>> > *I have followed the instruction
>>
>> > in http://mezzanine.jupo.org/docs/deployment.html.*
>>
>> >
>>
>> > *I have configured local_settings.py. Next step says issue this
>>
>> > command:
>>
>> > fab secure *
>>
>> > *I did and I got: Command 'fab' not found, (I guess it must have
>>
>> > been
>>
>> > installed when I installed the mezzanine but it hasn't)*
>>
>> >
>>
>> > *So I installed fabric inside my project with the activated
>>
>> > virtual
>>
>> > environment using this command: pip install fabric*
>>
>> >
>>
>> > *after that again I entered: fab secure, which gives me this
>>
>> > error:*
>>
>> >
>>
>> > Traceback (most recent call last):
>>
>> >>
>>
>> >>   File "/home/amir/blogenv/bin/fab", line 11, in 
>>
>> >>
>>
>> >> sys.exit(program.run())
>>
>> >>
>>
>> >>   File
>>
>> >>   "/home/amir/blogenv/lib/python3.6/site-packages/invoke/program.py",
>>
>> >>> line 324, in run
>>
>> >>
>>
>> >> self.parse_collection()
>>
>> >>
>>
>> >>   File
>>
>> >>   "/home/amir/blogenv/lib/python3.6/site-packages/invoke/program.py",
>>
>> >>> line 408, in parse_collection
>>
>> >>
>>
>> >> self.load_collection()
>>
>> >>
>>
>> >>   File
>>
>> >>   "/home/amir/blogenv/lib/python3.6/site-packages/fabric/main.py",
>>
>> >>> line 73, in load_collection
>>
>> >>
>>
>> >> super(Fab, self).load_collection()
>>
>> >>
>>
>> >>   File
>>
>> >>   "/home/amir/blogenv/lib/python3.6/site-packages/invoke/program.py",
>>
>> >>> line 599, in load_collection
>>
>> >>
>>
>> >> module, parent = loader.load(coll_name)
>>
>> >>
>>
>> >>   File
>>
>> >>   "/home/amir/blogenv/lib/python3.6/site-packages/invoke/loader.py",
>>
>> >>> line 76, in load
>>
>> >>
>>
>> >> module = imp.load_module(name, fd, path, desc)
>>
>> >>
>>
>> >>   File "/home/amir/blogenv/lib/python3.6/imp.py", line 235, in
>>
>> >>   load_module
>>
>> >>
>>
>> >> return load_source(name, filename, file)
>>
>> >>
>>
>> >>   File "/home/amir/blogenv/lib/python3.6/imp.py", line 172, in
>>
>> >>   load_source
>>
>> >>
>>
>> >> module = _load(spec)
>>
>> >>
>>
>> >>   File "", line 684, in _load
>>
>> >>
>>
>> >>   File "", line 665, in
>>
>> >>   _load_unlocked
>>
>> >>
>>
>> >>   File "", line 678, in
>>
>> >>   exec_module
>>
>> >>
>>
>> >>   File "", line 219, in
>>
>> >>> _call_with_frames_removed
>>
>> >>
>>
>> >>   File "/home/amir/blogenv/problog/fabfile.py", line 16, in
>>
>> >>   
>>
>> >>
>>
>> >> from fabric.api import abort, env, cd, prefix, sudo as
>>
>> >> _sudo, run as
>>
>> >>> _run, \
>>
>> >>
>>
>> >> ModuleNotFoundError: No module named 'fabric.api'
>>
>> >>
>>
>> >> What am I getting wrong here?
>>
>>
>>
>>
>>
>> --
>>
>> Ken Bolton
>>
>>
>>
>> --
>>
>> You received this message because you are subscribed to the Google Groups
>> "Mezzanine Users" group.
>>
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to mezzanine-use...@googlegroups.com.
>>
>> For more options, visit https://groups.google.com/d/optout.
>>
>>
>>
> --
> You received this message because you are subscribed to the Google Groups
> "Mezzanine Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to mezzanine-users+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


RE: [mezzanine-users] Admin redirect not working

2018-08-27 Thread Eduardo Rivas
Make sure the URL you’re trying to redirect is not assigned to a Page or any 
view. The redirects will only kick in if the URL raises a 404.

From: Travis
Sent: Sunday, August 26, 2018 5:57 PM
To: Mezzanine Users
Subject: [mezzanine-users] Admin redirect not working

Anyone having issues with the admin redirects not working? A simple example on 
a fresh install like:
Redirect From: /about/team/ 
Redirect To: https://www.google.com/

should work right? Is there another setting I'm missing?
Any known issues?
-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


RE: [mezzanine-users] Want to integrate a wiki?

2018-08-31 Thread Eduardo Rivas
Just my two cents:

- You could fork Mezzanine Wiki or contribute back to it to update it to 
support the latest version of Mezzanine.
- You can use Django apps and add them to your Mezzanine project, no need to 
abandon Mezzanine to use them.

From: John Whitmore
Sent: Friday, August 31, 2018 10:40 AM
To: Mezzanine Users
Subject: [mezzanine-users] Want to integrate a wiki?

I've been looking into mezzanine over the past number of weeks, when I get a 
chance. I wanted to integrate a wiki into my site but mezzanine-wiki isn't 
working for me and the last commit to that project was in 2014, so I assume 
it's more or less dead.

So how to fulfil this requirement? I guess I could try integrate a wiki of my 
own creation or perhaps the easiest solution is assembling a desperate 
collection of Django Apps and not use mezzanine. I'm not sure which way to 
proceed, any advice would be gratefully received
-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


<    1   2   3   4   5   >