I have a PostgreSQL table and view:
CREATE TABLE lines (
geom geometry(MultiLineString,4326),
type character varying(254),
login text,
gid serial NOT NULL,
CONSTRAINT lines_pkey PRIMARY KEY (gid))
CREATE OR REPLACE VIEW lines_view AS
SELECT lines.geom,
lines.type,
lines.gid
FROM lines;
CREATE OR REPLACE RULE add AS
ON INSERT TO lines_view DO INSTEAD INSERT INTO lines (geom, type, login)
VALUES (new.geom, new.type, "current_user"());
CREATE OR REPLACE RULE del AS
ON DELETE TO lines_view DO INSTEAD DELETE FROM lines
WHERE lines.login = "current_user"()::text AND lines.gid = old.gid;
CREATE OR REPLACE RULE upd AS
ON UPDATE TO lines_view DO INSTEAD UPDATE lines SET geom = new.geom, type = new.type, login = "current_user"()
WHERE lines.login = "current_user"()::text AND lines.gid = new.gid;
So, problem is when I load this lines_view in QGIS as layer and add lines, after saving I cannot use "node tool" to new lines ("Node tool: could not snap to a segment on the current layer"). But when I use move tool on them (just select "move feature(s)" button and click on new line) "node tool" start working as usual. Can some one help me with this?