473,395 Members | 1,639 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,395 software developers and data experts.

What are the other options against Zope?

Hi all,
I wanna thank Martin for helping out with my ignorance concerning
execution of stored procedure with python. Now i have decided to write
a web app that googles into my companies proprietary database. I need
to know whether zope is good for that job. But even the introduction to
zope in the zope book was intimidating. Are there any simple options?
If so plz tell me how i can obtain it and study it. I should say that i
am new to web programming.
Thank you

Jul 19 '05 #1
21 1570
godwin wrote:
I wanna thank Martin for helping out with my ignorance concerning
execution of stored procedure with python. Now i have decided to write
a web app that googles into my companies proprietary database.
Just checking... do you really mean "googles", or is that in your mind a
synonym for "search"?
I need
to know whether zope is good for that job.


For which part of it? The web part, or the searching part? It's not
likely sufficient for the searching part, since it doesn't include
database interfaces other than to its own ZODB. What proprietary
database is involved?

-Peter
Jul 19 '05 #2
Peter Hansen wrote:
godwin wrote:
I wanna thank Martin for helping out with my ignorance concerning
execution of stored procedure with python. Now i have decided to write
a web app that googles into my companies proprietary database.


Just checking... do you really mean "googles", or is that in your mind a
synonym for "search"?
I need
to know whether zope is good for that job.


For which part of it? The web part, or the searching part? It's not
likely sufficient for the searching part, since it doesn't include
database interfaces other than to its own ZODB. What proprietary
database is involved?


That's not correct. Zope2 includes DB interfaces to MySQL, PostGre, ODBC and
many others.
For Zope3 IIRC there are not yet so many interfaces.

Florian
Jul 19 '05 #3
Peter Hansen wrote:
godwin wrote:
I wanna thank Martin for helping out with my ignorance concerning
execution of stored procedure with python. Now i have decided to write
a web app that googles into my companies proprietary database.


Just checking... do you really mean "googles", or is that in your mind a
synonym for "search"?

I need
to know whether zope is good for that job.


For which part of it? The web part, or the searching part? It's not
likely sufficient for the searching part, since it doesn't include
database interfaces other than to its own ZODB. What proprietary
database is involved?

-Peter


I think the guy might like to know what Zope is.
I went to an IBM all day once, can't even remember the
name of their "web services". At smoke breaks would
compare notes with other attendees. I'm not sure we
ever understood, but we all agreed the problem
was "undefined terms" which I call organic buzz words.

Zope is like that to me. I ask what is it and the answer
sounds like "Oh, it's oierbv for the zxcvioupo of 7cvn^djh'.

Now understand, I know what very well what Python, Apache, PhP,
MySQL, IE and javascript do. I just don't know what Zope
does.

And if the answer is going contain phrases like "brings together"
or "sits on top of", don't bother. :-)
Jul 19 '05 #4
On Sat, 02 Jul 2005 10:55:19 -0500, phil <ph***********@anvilcom.com>
declaimed the following in comp.lang.python:

And if the answer is going contain phrases like "brings together"
or "sits on top of", don't bother. :-)
Well... From what I've seen, it doesn't "sit on top of"
either... It sits under... <G>

Plone being an example built on top of CMF, CMF being one
"content management framework" built on top of Zope.

As for Zope... Guess one would have to fall back on the expanded
name "Z Object Publishing Environment" (no idea where the Z gets into
things). A rather object-oriented system for managing and serving web
applications and data (using object inheritance for common behavior,
etc.) This makes Zope a toolkit, not an end application itself.
-- ================================================== ============ <
wl*****@ix.netcom.com | Wulfraed Dennis Lee Bieber KD6MOG <
wu******@dm.net | Bestiaria Support Staff <
================================================== ============ <
Home Page: <http://www.dm.net/~wulfraed/> <
Overflow Page: <http://wlfraed.home.netcom.com/> <

Jul 19 '05 #5
Florian Lindner wrote:
Peter Hansen wrote:
[Zope] doesn't include
database interfaces other than to its own ZODB.


That's not correct. Zope2 includes DB interfaces to MySQL, PostGre, ODBC and
many others.


It actually *includes* them? I thought those were all add-in modules,
not ones that Zope actually installs. (I admit it's been a couple of
years since I was current with the state of Zope... and my memory sucks.
:-( )

-Peter
Jul 19 '05 #6
either... It sits under... <G>
Well that's a relief, cause ...sits on top of....
was confusing.

A rather object-oriented system for managing and serving web
applications and data (using object inheritance for common behavior,
etc.) This makes Zope a toolkit, not an end application itself.

So that would make it Apache, with a Python CGI. Oh wait, Apache has
a Python CGI which can access Data bases and send objects to the client.

A web application is you deliver am html page and the user fills
in some forms, then submits the form, which is then validated
and another form is delivered. Right? Cool idea, IBM had that in
1975 it was called CICS.

I once asked my son-in-law tech support guy what is the Windows
registry, what does it do? He thought for a while and said
"Think of it as the soul of the machine". So I thought about it
as the soul of the machine for a while, then I asked;
"You don't know, do you", and he said "No."

Jul 19 '05 #7
If you're looking for a leight weight web development enviroment acting
as a front end for a database take a look at http://www.cherrypy.org

Jul 19 '05 #8
On Saturday 02 July 2005 10:55 am, phil wrote:
Zope is like that to me. I ask what is it and the answer
sounds like "Oh, it's oierbv for the zxcvioupo of 7cvn^djh'.

Now understand, I know what very well what Python, Apache, PhP,
MySQL, IE and javascript do. I just don't know what Zope
does.


You know, that's a good question. Let's see if I can make a good
answer:

Zope is the "Z Object Publishing Environment".

It publishes a *tree* of *objects* stored in the ZODB which is
an object oriented database. Think of it as a monstrous pickle
implementation.

Zope folders are a lot like user-defined classes in your application.
They contain things, which is why they're called "folders". But
basically, from a programming perspective, what they contain
are their "attributes" in the class/object jargon (in reality it can
be more complicated, some containers use Python container
types like dictionary or list as their internal structure).

Of course, "publishes" means "publishes to the web".

Z:

So Zope includes an *object store*, a *publisher*,
and a *web server*. When the web server receives a request,
it asks the publisher to get it, which digs it out of the object
store. Then it goes back the other way, back to the requester
via the web.

Usually, you run the Zope webserver behind another proxy
like Apache, but it is possible to serve a site directly from
Zope. I never do that for production, because, Apache, being
much more completely tested is a safer bet for not crashing
or misbehaving under heavy loads. However, the built-in
Zope webserver (I believe it was once called Medusa) is
quite convenient for development and testing.

OBJECT:

Because Zope publishes Python *objects* instead of *files*,
they can have much richer structure (e.g. metadata) than
a site based on files stored in a filesystem. However, a set
of files stored in a filesystem is very much like an object
database, so

1) The ZODB is sometimes called the Zope Object FileSystem,
which I find a useful idea --- especially since ZOFS has some
extra constraints beyond what ZODB requires.

2) You actually can store contents of the ZODB *as* a filesystem
with associated metadata in auxiliary files. I believe this is
how the "filesystem storage" option for ZODB works (by default,
ZODB lumps all its data into one big container file "Data.fs" --
this is the "filestorage" option).

PUBLISHING:

Zope has also been called a "web application server", because
it's relatively easy to write highly-integrated, highly-dynamic
sites with it (and overkill to use it for purely static sites).

Objects are defined in such a way that they can be represented
as web pages. The publisher has a lot of default behaviors for
built-in types and the objects that come with Zope.

Zope "product" developers have the responsibility (and control)
over how their objects will appear when published.

ENVIRONMENT:

If you want to think of it as a "web application server", then
basically, Zope is your "operating system", and your site is
your "web application software".

Zope also provides some specialized programming language
help --- Python scripts that can be edited through the web,
and two "Templating Languages" for designing web pages that
will have dynamic content. You can think of the templating
languages as being similar to PHP or ASP style programming.

But "Zope Zen" says that the serious code should be either
in Python scripts or in Python products (on the filesystem,
instead of in the ZODB, like scripts). Templates are meant
to be simple, simple, simple. But that's a style issue.

This stuff provides the Zope "operating system" with a
"shell". And the "Zope Management Interface", which is
what you see when you visit the /manage page at a Zope
site, is the "window system" or, perhaps more accurately,
the "file browser" of that "operating system".

So, in fact, Zope does quite a bit. But it isn't really all
that hard to understand. It's just not been well-introduced,
because the people explaining it have a tendency to forget
that it isn't all obvious, because it seems that way to
them, now that they know it.

But that's the newbie's problem in all areas of software, ISTM.

HTH,
Terry

--
Terry Hancock ( hancock at anansispaceworks.com )
Anansi Spaceworks http://www.anansispaceworks.com

Jul 19 '05 #9
On Sat, 02 Jul 2005 16:26:22 -0500, phil <ph***********@anvilcom.com>
declaimed the following in comp.lang.python:


I once asked my son-in-law tech support guy what is the Windows
registry, what does it do? He thought for a while and said
"Think of it as the soul of the machine". So I thought about it
as the soul of the machine for a while, then I asked;
"You don't know, do you", and he said "No."
The Windows registry is "a maze of twisty little passages, all
alike" <G>

No joke either... You may find an application entry that has a
GUID, the GUID has a file extension, the file extension points to the
application <G>

The registry a cryptic, bloated, system by which M$ can hide
details about anything they want... Instead of having separate .INI
files scattered about.

I recall when W95 had a system restore utility that was supposed
to write core system files to a floppy for use in booting a system when
the main boot sector has gone bad... Problem is that even a small W95
system soon had a registry that was 5+MBytes. Try fitting that onto a
floppy.

-- ================================================== ============ <
wl*****@ix.netcom.com | Wulfraed Dennis Lee Bieber KD6MOG <
wu******@dm.net | Bestiaria Support Staff <
================================================== ============ <
Home Page: <http://www.dm.net/~wulfraed/> <
Overflow Page: <http://wlfraed.home.netcom.com/> <

Jul 19 '05 #10
On Saturday 02 July 2005 04:26 pm, phil wrote:
A rather object-oriented system for managing and serving web
applications and data (using object inheritance for common behavior,
etc.) This makes Zope a toolkit, not an end application itself.
So that would make it Apache, with a Python CGI.


No. No object tree there --- except the filesystem, which is a braindead
object tree, so doesn't really count. It is a *little* like a Macintosh
filesystem, which has metadata stored for each file.
Oh wait, Apache has
a Python CGI which can access Data bases and send objects to the client.
Yes, you could use that to re-write everything that Zope does
for you. Why would you want to?

However, many people do apparently do this all the time.

Of course, Zope is by no means the only way to create a site,
and may not be appropriate for everybody. But it is darned
useful.
A web application is you deliver am html page and the user fills
in some forms, then submits the form, which is then validated
and another form is delivered. Right? Cool idea, IBM had that in
1975 it was called CICS.
This is true in the same sense that Python is unnecessary
because all programs can be written in assembler. Or machine
code for that matter. Entered by flipping switches, even -- throw
away that keyboard.

I have actually seen this done, BTW. Even though I'm theoretically
too young. ;-)
I once asked my son-in-law tech support guy what is the Windows
registry, what does it do? He thought for a while and said
"Think of it as the soul of the machine". So I thought about it
as the soul of the machine for a while, then I asked;
"You don't know, do you", and he said "No."


I did already post a serious reply, but now I'm afraid I've been
trolled. :-P

I was assuming you actually wanted to know what Zope was.

Yes, it is a funny story, though. ;-)

--
Terry Hancock ( hancock at anansispaceworks.com )
Anansi Spaceworks http://www.anansispaceworks.com

Jul 19 '05 #11
Terry Hancock <ha*****@anansispaceworks.com> writes:
This is true in the same sense that Python is unnecessary
because all programs can be written in assembler. Or machine
code for that matter. Entered by flipping switches, even -- throw
away that keyboard.

I have actually seen this done, BTW. Even though I'm theoretically
too young. ;-)


I've actually done this. But the real point of having switches to flip
isn't so you can enter programs - it's so you can interrupt the
kernel should you drop it into a tight loop. You poke an invalid op
code into the middle of the loop, and let it panic.

I've actually seen this done as well.

<mike
--
Mike Meyer <mw*@mired.org> http://www.mired.org/home/mwm/
Independent WWW/Perforce/FreeBSD/Unix consultant, email for more information.
Jul 19 '05 #12
Christopher Subich <sp****************@block.subich.spam.com> writes:
That, and the file format definitely isn't robust to bit-rot that
happened too often on FAT16/32 filesystems.


From where I sit, the critical difference between the registry and a
set of .ini files (or Unix rc files) is that the registry requires
special tools to tweak if it gets so busted you can't boot the
system. The .ini (rc) files require nothing more complicated than an
editor. Editors you sort of have to know - so fixing the .ini (rc)
files doesn't require learning anything beyond the configuration
system. To add insult to injury, the tools for hacking the Windows
registry all require you to bring up a GUI, which means your "rescue"
disk has to include a GUI.

Note that Unix isn't immune to things like the registry. AIX(*) puts
all the configuration information in an object database, that require
special tools to manipulate. At least AIX provides CLI and
curses-based tools to do the work.

<mike

*) I know, some people don't consider AIX to be Unix. But it at least
reminds you of Unix...
--
Mike Meyer <mw*@mired.org> http://www.mired.org/home/mwm/
Independent WWW/Perforce/FreeBSD/Unix consultant, email for more information.
Jul 21 '05 #13
Peter Hansen wrote:
Florian Lindner wrote:
Peter Hansen wrote:
[Zope] doesn't include
database interfaces other than to its own ZODB.


That's not correct. Zope2 includes DB interfaces to MySQL, PostGre, ODBC
and many others.


It actually *includes* them? I thought those were all add-in modules,
not ones that Zope actually installs. (I admit it's been a couple of
years since I was current with the state of Zope... and my memory sucks.
:-( )


Ok, you're right. But I don't really think it makes a difference to install
them afterwards.

Florian
Jul 21 '05 #14
Florian Lindner wrote:
Peter Hansen wrote:
[Zope] doesn't include
database interfaces other than to its own ZODB.


Ok, you're right. But I don't really think it makes a difference to install
them afterwards.


Probably not, but until the OP sheds more light on what this "companies
proprietary database" actually is, and what "googling" means, none of us
can do more than guess as to what would make a difference or not...

-Peter
Jul 21 '05 #15
I did already post a serious reply, but now I'm afraid I've been
trolled. :-P

I hope you did not think I was dissing your response, because I

certainly was not and in fact recognized your response as a
sincere effort to enlighten.

To whomever I directed sarcasm I apologize. My frustration is 20
years old and has nothing to do with you or Zope.

Anyway, thanks Terry, I still don't know what Zope is but I need to
accept that it's just a toolkit and I'm not gonna know until
I dig in and as long as my web needs are simple, I probably won't.

Jul 21 '05 #16
On Sun, 03 Jul 2005 19:38:28 -0500, phil <ph***********@anvilcom.com>
wrote:
Anyway, thanks Terry, I still don't know what Zope is but I need to
accept that it's just a toolkit and I'm not gonna know until
I dig in and as long as my web needs are simple, I probably won't.


Actually, I found playing with CherryPy (http://www.cherrypy.org) an
easier way to "get" Zope than digging into Zope directly. It also took
me a good while to understand what an "application server" was, for
that matter.

AFAIK, Zope can be summed up as...

- a server application that uses an object-oriented database (ZODB) to
store items (static or dynamic HTML pages, images, scripts, etc.) as
an alternative to storing data in either a SQL database and/or a
filesystem (although Zope can connect to a SQL database, if need be)

- the use of an OO-database makes it possible to map URLs to scripts
(like it's done when mapping URLs to script pages in the filesystem),
with some added benefits

- a major benefit of the ZODB is "acquisition"
(http://www.zope.org/Members/Amos/WhatIsAcquisition), ie. if an object
is not found in the "directory" pointed to in the URL, ZODB will
search for it by going up the tree all the way to the root, and either
return the object if any is found along the way, or a 404. This makes
it possible, for instance, to locate objects common to different
sections of your site at the root of the site

- scripts are mostly written in Python, since Zope is written partly
in Python, and partly in C, although Zope also supports scripts in
Perl. If you like, you can also write scripts à la PHP, ie. include
code in HTML pages, using two templating languages: DTML is the older
one, and ZPT is the more recent one.

HTH
Fred.
Jul 21 '05 #17
Actually i want to create a "google" like web interface to any rdbms
and search as we all do it in google.That would be great isn't it.
Thank u for your queries.

Jul 21 '05 #18
You understood my request correctly. I thank u for pointing me to
cherrypy.

Jul 21 '05 #19
phil wrote:
Peter Hansen wrote: Now understand, I know what very well what Python, Apache, PhP,
MySQL, IE and javascript do. I just don't know what Zope
does.

And if the answer is going contain phrases like "brings together"
or "sits on top of", don't bother. :-)

It's an object oriented database, with a structure that is similar to
files and directories in an ordinary OS.

But it is a lot smarter, because the files and directories are actually
objects with different attributes and parameters.

The methods on these objects can then be called eg. from a web browser
with different parameters. But you can also use other protocols than
http like dav, ftp etc.

This is a very effective way to build web applications, and does not
need sql-object remapping as normal web apps does.

--

hilsen/regards Max M, Denmark

http://www.mxm.dk/
IT's Mad Science
Jul 21 '05 #20
It's an object oriented database, with a structure that is similar to
files and directories in an ordinary OS.

But it is a lot smarter, because the files and directories are actually
objects with different attributes and parameters.

The methods on these objects can then be called eg. from a web browser
with different parameters. But you can also use other protocols than
http like dav, ftp etc.

Well, that's interesting. I've never seen an explantion like
this.
Actually I think I have, and was too dumb to realize what
I was reading.

A data base with properties and methods. Cool.
Jul 21 '05 #21
On Monday 04 July 2005 10:21 am, phil wrote:
A data base with properties and methods. Cool.


I am so sure I already said this. Well, I guess I typed
too much else.

Cheers,
Terry

--
Terry Hancock ( hancock at anansispaceworks.com )
Anansi Spaceworks http://www.anansispaceworks.com

Jul 21 '05 #22

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

14
by: ketulp_baroda | last post by:
i am developing a web application and i am really confused on what should i use. should i use just python and use the cgi module availabe. Or should i use application like WebWare.Also there is PSP...
4
by: webmaster | last post by:
Hi, I'm desperatly trying to use Kinfxdb, but I have numerous segmentation faults, who lead my Zope to crash. It mostly occurs when I try to work with "date" fields (with an Informix Online...
4
by: Carl | last post by:
Using COM and ADO on Win32, it is very easy to access databases (eg MySql, MS SQL Server, etc) from Python. Does anybody know if it is possible to access databases from Zope (which is written in...
4
by: Kay Schluehr | last post by:
The last downloadable release is from november 2004. The Windows installer is configured for Python 2.3(!). The Zope.org main page announces Zope 2.8 beta 2. Is it stillborn? Kay
137
by: Philippe C. Martin | last post by:
I apologize in advance for launching this post but I might get enlightment somehow (PS: I am _very_ agnostic ;-). - 1) I do not consider my intelligence/education above average - 2) I am very...
4
by: Avery Warren | last post by:
I am investigating converting a wiki site to plone. I am having a lot of difficulty finding good documentation programmatically accessing the ZODB API. A lot of the user feedback is centered on...
28
by: Admin | last post by:
I am doing some research for a Python framework to build web applications. I have discarted Zope because from what I've read, the learning curve is too steep, and it takes more time to build...
4
by: MrBlueSky | last post by:
Hello! I've just finished working on my first Python app (a Tkinter-based program that displays the content of our application log files in graphical format). It was a great experience that's...
34
by: emrahayanoglu | last post by:
Hello Everyone, Now, I'm working on a new web framework. I tried many test on the other programming languages. Then i decided to use python on my web framework project. Now i want to listen...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.